考虑以下文字:
<bla><bla text><bla>
我希望正则表达式与中间<bla text>
完全匹配。我尝试\<.*?text.*?\>
,但它从一开始就捕获字符串,因为它以'&lt;'开头。
非常感谢。
答案 0 :(得分:3)
答案 1 :(得分:2)
此正则表达式与中央<bla text>
匹配,并将其捕获为第一个匹配项(包括括号):
(\<\w+? \w+?\>)
解释,它匹配:
<
\w
是[a-zA-z_]
的简写)>
也就是说,它匹配完全两个由完全一个空格分隔的单词,全部包含在<..>
中。
这一个:
(\<\w+?\s+\w+?\>)
也匹配两个单词之间的任意数量的空格。
最后,这一个:
<\w+?>(\<\w+? \w+\>)<\w+?>
匹配所有字符串,但捕获中心块的内容,因此,如果要替换<bla><bla text><bla>
字符串,可以使用$1
或{{1来引用中心块在替换字符串中。
答案 2 :(得分:1)
这是你的正则表达式。
/>(<bla.*?>)/