2017-05-03 53 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

非常感謝 –