【发布时间】:2013-01-20 23:46:28
【问题描述】:
我正在尝试为 Sublime Text 创建一个新的语法定义。我已经制定了正则表达式来突出显示每一行中的匹配项,但我希望匹配项包括新行以及任何字符。这是 tmLanguage 文件中的正则表达式,它在一行中工作:
<key>match</key>
<string>\{\+\+(.*?)\+\+[ \t]*(\[(.*?)\])?[ \t]*\}</string>
我尝试修改点 (.) 匹配以跨越多行,但它实际上似乎并没有捕获整个块。我的理解是修饰符 ?m: 应该可以工作,但不能。
<key>match</key>
<string>(?m:(\{\+\+(.*?)\+\+[ \t]*(\[(.*?)\])?[ \t]*\}))</string>
有没有办法声明一个跨多行匹配的语言定义正则表达式?
【问题讨论】:
-
我不认为这会给出正确的匹配,但我还是尝试了。没有运气。
标签: regex sublimetext2