【发布时间】:2015-06-29 20:45:12
【问题描述】:
所以我正在编写一个脚本,它将获取两个 div 标签之间的所有内容,我拥有它的方式似乎正在工作,但它与我注意到的所有内容都不匹配,我不知道为什么,是否是因为换行符,或任何其他问题。我希望所有内容(包括其他 html 标签)都匹配。
$aPost = preg_match_all('#<div class="posttext">(.*?)</div>#', $rThread, $aPosts);
看起来好像它只匹配一行上写的任何内容,没有换行符,如果 div 不符合该条件,则完全忽略它。
【问题讨论】:
-
尝试
m开关以获得多行支持:#<div class="posttext">(.*?)</div>#imstackoverflow.com/a/16754347/3711660 -
使用
(?s)<div class="posttext">(.*?)</div> -
感谢 sln,效果很好!