我有一个看起来像这样的字符串:
Hello Hello Hello<br>Hello Hello <br> hello hello
我正在尝试使用正则表达式捕获被字符包围的<br>
。因此,从上面的示例字符串中,我应该只捕获第一个<br>
实例,而不是第二个实例。我试过用这个:
\w(<br/>)\w
但我抓住了这个目的:o<br>H
如何才能让正则表达式仅捕获<br>
而不捕获环绕声字符?
答案 0 :(得分:1)
你可以使用环视:
(?<=\w)<br>(?=\w)
(我不确定/
在你的正则表达式中做了什么)
虽然大多数语言都允许您提取放在括号中的内容,但在这种情况下,您可以保留正则表达式,只需提取第一个组(这对应于括号中的第一个(也是唯一的))。 / p>
解释,this site提供:
NODE EXPLANATION
--------------------------------------------------------------------------------
(?<= look behind to see if there is:
--------------------------------------------------------------------------------
\w word characters (a-z, A-Z, 0-9, _)
--------------------------------------------------------------------------------
) end of look-behind
--------------------------------------------------------------------------------
<br> '<br>'
--------------------------------------------------------------------------------
(?= look ahead to see if there is:
--------------------------------------------------------------------------------
\w word characters (a-z, A-Z, 0-9, _)
--------------------------------------------------------------------------------
) end of look-ahead