如何拆分不同的链接。
<ul>
<li><a href="/page/?link1=2&page=2#fff">pag2 </a></li><li><a href="/page/">pag2 </a></li><li><a href="/page/">pag2 </a></li>
</ul>
我尝试过类似的东西,但它根本找不到它
$re = '/<a href=["\'](([^\'\"\#]*)?)(?=[\'"\#])(.*)["\']>[^<\/a>]+<\/a>/mi';
$str = '<ul>
<li><a href="/page/">pag2 </a></li><li><a href="/page/">pag2 </a></li><li><a href="/page/">pag2 </a></li>
</ul>
';
preg_match_all($re, $str, $matches, PREG_SET_ORDER, 0);
// Print the entire match result
var_dump($matches);
也试试这个,但它捕获了所有
$re = '/<a href=["\'](([^\'\"\#]*)?)(?=[\'"\#])(.*)["\']>.+<\/a>/mi';
答案 0 :(得分:0)
\shref=(["'])(.*?)\1
故障:
\s
- 空格字符,不匹配<other-prefix>-href="example.com"
href=
- 字面匹配href=
(["'])
- 捕获所使用的引用类型(第1组)(.*?)
捕获所有内容,直到(第2组)\1
- 您会找到所使用的引用类型(与第1组中匹配的内容相匹配)请参阅demo