假设我的文本文件中包含以下内容:xxa name="round_xxNumber 1xxcolspanxxDOGyya name="round_yyNumber 2xxcolspanxxDOGzza name="round_zzNumber 3xxcolspanxxDOG我想使用PHP的preg_match_all()函数返回以以下内容开头的文本文件中的所有序列:一个名字=“ round_..之间有任何字符序列和换行符,然后以:结尾科尔斯潘因此结果应为以下3个匹配项:a name="round_xxNumber 1xxcolspana name="round_yyNumber 2xxcolspana name="round_zzNumber 3xxcolspan这是我的代码,失败了。它将文本文件的内容读取到$ page_contents中,但是preg_match_all产生完全不正确的匹配项:$page_contents = file_get_contents('./path/to/textfile.txt');$matches1 = array();preg_match_all('/a name="round_(.*)colspan/s', $page_contents, $matches1);我正在使用PHP 7.1.28,Windows10。谢谢。
1 回答
![?](http://img1.sycdn.imooc.com/545862e700016daa02200220-100-100.jpg)
至尊宝的传说
TA贡献1789条经验 获得超10个赞
使正则表达式不贪心:
preg_match_all('/a name="round_(.*?)colspan/s', $page_contents, $matches1);
// __^
- 1 回答
- 0 关注
- 140 浏览
添加回答
举报
0/150
提交
取消