我正在修改脚本以从长文本页面输出字符串,这就像魅力一样,唯一的问题是第二个集合只会输出数字。
<?php
$file = file_get_contents('page.htm');
preg_match_all('#<a.*?href="(?:http://)www.site.com/profiles/(?P<id>\d+)[^>]+#msi',$file, $matches);
$f = fopen("file.txt", "w");
print_r($matches['id']);
fwrite($f, print_r($matches['id'], true));
fclose($f);
echo "<br><br>";
preg_match_all('#<a.*?href="(?:http://)www.site.com/id/(?P<id2>\d+)[^>]+#msi',$file, $matches2);
$f = fopen("file.txt", "w");
print_r($matches2['id2']);
fwrite($f, print_r($matches2['id2'], true));
fclose($f);
?>
最上面一个应该这样做,但是底部需要允许包括特殊字符的所有字符,是否有遗漏或我需要添加的东西?万分感谢!
答案 0 :(得分:1)
更改
'#<a.*?href="(?:http://)www.tf2items.com/id/(?P<id2>\w+)[^>]+#msi'
到
'#<a.*?href="(?:http://)www.tf2items.com/id/(?P<id2>\d+)[^>]+#msi'
显然\ w只是字母(wtf)而\ d是一切