2017-05-03 52 views
0

我使用ACE网页编辑器以pascal语言进行编码,并希望在mode-pascal.js本机文件中添加规则。在ACE网页编辑器中添加Pascal规则

我想要的是突出所有以'property'开头并以';'结尾的所有行中的'read'和'write'关键字。

喜欢的东西:

property Lala : Integer read (123) write (456); 

但不是:

var read := "write"; 

并与ACE ......我需要做的只有一个正则表达式,乐趣。

如果有人有一个想法,它可以挽救生命!

+0

所以,你要选择整条生产线与读写字? – Rahul

+0

这是不可能的一个正则表达式(如果它不是.NET或PyPi正则表达式)。 –

+0

@Rahul只是“阅读”和“写作”,而不是整条线,可以有几个。 –

回答

0

Ace语法高亮显示支持与textmate和sublime类似的状态。 这意味着你可以匹配property关键字,并切换到,突出readwrite,像这样的状态:

[ 
... 
{ 
    regex: /property\b/ 
    token: "keyword", 
    next: [ 
     { 
      regex: /(read|write)\b/ 
      token: "keyword", 
     }, 
     { include: "start" }, // include other rules if you want 
     { 
      regex: "$|;", 
      token: "text", 
      next: "start" // exit the property state on line end or ; 
     } 
    ] 
} 
... 
+0

非常感谢 –