>  기사  >  백엔드 개발  >  javascript - php正则匹配后下一个引号问题

javascript - php正则匹配后下一个引号问题

WBOY
WBOY원래의
2016-08-04 09:21:09994검색

<code>$html = title
EOF;

$isMatched = preg_match('/<a>(.*?)/', $html, $matches);</a></code>

我用这个代码最后匹配出来的是从%E5%88%B0
">title中间的内容
最后输出的结果
a.php?u=ABjhpIVC;b=5" onmousedown="return rwt(AFQjCNH3RnE94GMEJkoxp0Iy1fSbpjbbwQ)
我想要获取第一个双引号到第二个引号中间的内容,也就是a 标签href=的内容
并不需要获取从第一个引号到最后一个双引号中间的内容,请问大家我这段代码怎么修改才能匹配出来?

回复内容:

<code>$html = title
EOF;

$isMatched = preg_match('/<a>(.*?)/', $html, $matches);</a></code>

我用这个代码最后匹配出来的是从%E5%88%B0
">title中间的内容
最后输出的结果
a.php?u=ABjhpIVC;b=5" onmousedown="return rwt(AFQjCNH3RnE94GMEJkoxp0Iy1fSbpjbbwQ)
我想要获取第一个双引号到第二个引号中间的内容,也就是a 标签href=的内容
并不需要获取从第一个引号到最后一个双引号中间的内容,请问大家我这段代码怎么修改才能匹配出来?

那你就要用贪婪匹配咯~
/<a>(.*?)/</a>
你用.*?后面跟"他只要匹配到下一字符是"就停止了

是用禁止贪婪匹配U
个人经验 你写正则的时候都加上Uis

'/(.*)/iU',href后边还有属性呢,不写上匹配不到的

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.