猿问

正则表达式单引号问题

我写了一个正则表达式,目的是匹配a,img标签dom以及其里的href及src后的路径。

$pattern = '/<[a|img]{1}[^\>]*[href|src]{1}[\s=\"]+([\:\w\.\/]+)[\"\s]+[\/]?>[\x4e00-\x9fa5a-zA-Z_.]*<?\/?[a|img]?>?/i';

上面表达式可以匹配 <a href="http://www.zhai14.com" >,但我还想匹配其中超链接<a href='http://www.zhai14.com' >为单引的情况。
可是上面php字符串外面已经是单引,[\"\s]写成[\"\'\s]就会导致正则表达式失效,求解决方案。
另外, 上面自己写的正则好长,有没更简洁的方式呢。

附上测试正则的网站:http://regexr.com/

缥缈止盈
浏览 831回答 3
3回答

慕少森

php 写爬虫可以使用 PHPquery
随时随地看视频慕课网APP
我要回答