Sublime Text 3语法文件中的Regex捕获单词后的所有内容,包括换行符

问题描述 投票:0回答:2

我正在编写高级文本3的语法定义,在该语法中,我试图捕获单词END之后的所有文本,包括所有换行符。在Sublime Text 3中阅读了regex的受支持功能后:https://raw.githubusercontent.com/kkos/oniguruma/5.9.6/doc/RE我知道我使用(?m)来捕获换行符,和(?<= END)捕获单词END之后的所有内容。

但是,我找不到将两者结合的方法,因此我可以捕获单词END之后所有行中的所有文本。

编辑:这是语法文件的一部分:

contexts:
  main:
    - include: expressions

  expressions:
    - include: comments

  comments:
    - match: (?<=END)(.*)
      scope: comment.block

这有效,但仅捕获到该行的末尾。

regex sublimetext3
2个回答
0
投票

尝试此正则表达式:

(?si)(?<=END)(.*)

[前两个修饰符表示:

  1. s:将所有输入视为单行,用.匹配换行符>
  2. i:不区分大小写(如果您特别想搜索大写字母“ END”,请删除此字符]
  3. 正则表达式示例:https://regex101.com/r/ToW4Ms/1


0
投票

感谢您的提示@OdatNurd,我通过您对另一个问题的另一个答案进行了阅读,这有助于我找到解决方案:Custom syntax in Sublime Text 3

© www.soinside.com 2019 - 2024. All rights reserved.