小编jcf*_*ria的帖子

SynMultiSyn荧光笔插入位置

我有SynMultiSyn Highlighter(synHTMLcomplex),包括HTML(synHTML)和JavaScript(synJScript),如下所示:

synHTML       : TSynHTMLSyn;
synJScript    : TSynJScriptSyn;
synHTMLcomplex: TSynMultiSyn;

// HTML complex
with SynHTMLcomplex do begin
  DefaultLanguageName:= 'HTML complex';
  DefaultFilter      := 'HTML complex (*.html; *.htm)|*.html; *.htm';
  DefaultHighlighter := synHTML;
  with Schemes do begin
    Add.Index:= 0;
    with Items[0] do begin
      Highlighter:= synJScript;
      SchemeName := 'JavaScript';
      StartExpr  := '<script';
      EndExpr    := '</script>';
      with MarkerAttri do
        Background:= clNone;
    end;
  end;
end;
Run Code Online (Sandbox Code Playgroud)

一旦进入SynEdit,是否有任何方法(属性或方法)知道光标(CaretY)是哪种Highlighter(synHTML或synJScript)?

有人可以帮忙吗?

delphi synedit

5
推荐指数
1
解决办法
442
查看次数

RegEx:紧接在最后一个打开的括号之后的文本

我对RegEx有一点了解,但此刻,它远远超出了我的能力.

我需要帮助才能在最后一个没有匹配括号的开括号之后立即找到文本/表达式.

这是开发中的开源软件(Object Pascal)的CallTip.

下面是一些例子:

------------------------------------
Text                  I need
------------------------------------
aaa(xxx               xxx
aaa(xxx,              xxx
aaa(xxx, yyy          xxx
aaa(y=bbb(xxx)        y=bbb(xxx)
aaa(y <- bbb(xxx)     y <- bbb(xxx)
aaa(bbb(ccc(xxx       xxx
aaa(bbb(x), ccc(xxx   xxx
aaa(bbb(x), ccc(x)    bbb(x)
aaa(bbb(x), ccc(x),   bbb(x)
aaa(?, bbb(??         ??
aaa(bbb(x), ccc(x))   ''
aaa(x)                ''
aaa(bbb(              ''
------------------------------------

For all text above the RegEx proposed by @Bohemian
(?<=\()(?=([^()]*\([^()]*\))*[^()]*$).*?(?=[ ,]|$)(?! <-)(?<! <-)
matches all cases.

For the below (I found these cases when implementing the RegEx in the software) not
------------------------------------
New …
Run Code Online (Sandbox Code Playgroud)

regex delphi

4
推荐指数
1
解决办法
278
查看次数

标签 统计

delphi ×2

regex ×1

synedit ×1