我必须使用带有字符串的正则表达式#34; [%" "%]"和任何文字或""在里面。例如:
输入:dsafsdfadsaffsdadsaffadsaf[%sadsad[%]%%]fdfsadfsad%]fsasdf
输出:[%sadsad[%]
我已经写过表达式 - \[%(.\n*)*%\]
,但它需要%]
的最后一个。
输出:[%sadsad[%]%%]fdfsadfsad%]
有没有人知道如何获得第一场比赛?
答案 0 :(得分:1)
将.
和\n
置于由逻辑OR |
运算符分隔的捕获或非捕获组中,并将其设置为非贪婪。
\[%(.|\n)*?%\]
或强>
你可以这样做。
\[%[\S\s]*?%\]
[\S\s]*?
非贪婪地匹配任何空格或非空格字符。
答案 1 :(得分:0)
\[%[^\]]*%\]
您可以尝试将此字符串设置为首先关闭%]
。请参阅演示。
https://regex101.com/r/gX5qF3/5
NODE EXPLANATION
--------------------------------------------------------------------------------
\[% '['%
--------------------------------------------------------------------------------
[^\]]* any character except: '\]' (0 or more
times (matching the most amount possible))
--------------------------------------------------------------------------------
%\] %']'