正则表达式多个括号
$str = "<p>(a)(3) asdf (10) asdf</p>";
尝试使用 php preg_match_all 拉出第二组括号
我正在解析非常大的文档,所以目前有这个:
preg_match_all("=(?:<p[^>]*>|<p[^>]*>Note|<i>|</i>)\((.*)\)=siU", $str, $matches);
拉出像这样的东西很好:
<p>(a)
<p>Note(a)
<i>(a)
</i>(a)
全部返回(a)
我也想在任何时候看到这个:< code>
(a)(3)
所以我需要第二个括号及其返回的值,如 (3)
并且我不需要任何其他括号 + 值,如 (a) 或 (10)
$str = "<p>(a)(3) asdf (10) asdf</p>";
Trying to pull the second set of parentheses using php preg_match_all
Very big doc I'm parsing, so currently have this:
preg_match_all("=(?:<p[^>]*>|<p[^>]*>Note|<i>|</i>)\((.*)\)=siU", $str, $matches);
Pulling things like this fine:
<p>(a)
<p>Note(a)
<i>(a)
</i>(a)
All returning (a)
I'd like to also search for any time I see this: <p>(a)(3)
So I need the second paren and its value returned like (3)
And I do not want any other paren + value like the (a) or the (10)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
像这样的事情怎么样?
How about something like this?
您可能正在寻找这个:
echo's :
如果您需要匹配整行,您可以使用:
echo's:
you may be looking for this:
echo's :
if you need to match the whole line you may use:
echo's: