我想在Sublime Text中使用正则表达式Parameter1
。其他参数将不会被使用。
初始标签:
<description><![CDATA[<b>Parameter1</b></br></br>
This not to be copied and can be long]]></description>
此表达式在Regex Sublime Text ...
中<description><!\[CDATA\[<b>(\w+)</b></br></br>(\w*)\]\]</description>
无法找到我需要的东西(当我到达它时停止寻找)
答案 0 :(得分:1)
你的正则表达式与测试字符串不匹配 单词字母之间有空格 它也不会像标点符号那样匹配非单词字母。
以下是两个正则表达式
1。这只是为了匹配您的测试字符串。
# <description>\s*<!\[CDATA\[\s*<b>([\s\w]+)</b>\s*</br>\s*</br>([\s\w]*)\]\]\s*</description>
<description>
\s*
<!\[CDATA\[
\s*
<b>
( # (1)
[\s\w]+
)
</b> \s* </br> \s* </br>
( # (2)
[\s\w]*
)
\]\]
\s*
</description>
2。如果您的引擎支持前瞻断言,则应该如何操作。
# (?s)<description>\s*<!\[CDATA\[\s*<b>((?:(?!\]\]|\s*</b>).)+?)\s*</b>\s*</br>\s*</br>\s*((?:(?!\s*\]\]).)*)\s*\]\]\s*</description>
(?s)
<description>
\s*
<!\[CDATA\[
\s*
<b>
( # (1)
(?:
(?! \]\] | \s* </b> )
.
)+?
)
\s* </b> \s* </br> \s* </br> \s*
( # (2)
(?:
(?! \s* \]\] )
.
)*
)
\s*
\]\]
\s*
</description>