我写了一个简单的正则表达式,想匹配标题中的文本,Html如下:
<h1>you are my little princess!</h1>
当前我想写一个最基本的正则匹配,提取文本 you are my little princess!
我写的正则表达式如下:
(?<=<h1>)[\s\S]*?(?=</h1>)
但是我发现(?<=<h1>)无法匹配,我搜索的很多关于回顾后发匹配的文章,见别人也是这样写的。
但是我现在这种写法,我在在线的正则表达式站点测试(http://tool.chinaz.com/regex/),发现无法匹配((?=</h1>) 可以匹配)。
我实在是找不到原因,希望有懂正则表达式的前辈可以帮忙,解决我的疑问~
非常感谢!
正则表达式有很多种方言,每个方言下面的实现并不相同,就这个问题而言的话,就是javascript确实并不支持这种反向匹配的语法
你的正则表达式本身也还有bug,匹配 </h1> 的 / 没有转义,应该是 <\/h1>
这个正则表达式写的也太繁琐了,给你个简单的(并且也更通用,在不同语言上)