我对正则表达式并不熟悉,我真的需要你的帮助。
我正在解析网站的源代码,我感兴趣的信息(我们称之为XXXX)被以下代码包围:
Number of people
</p>
<p style="font-size: 150%;">
<b>XXXX</b>
注意:我直接从源代码中复制了这些内容,因此您可以看到缩进和所有内容(如果这很重要)。
我试过了,但是preg_match()返回0:
$regex = '~Number of people</p><p style="font-size: 150%;"><b>(.+?)</b>~';
答案 0 :(得分:3)
您忘记了模式中的所有白色字符(空格,制表符,换行符):
~Number of people\s*</p>\s*<p style="font-size: 150%;">\s*<b>(.+?)</b>~
或更好
~Number of people\s*</p>\s*<p style="font-size: 150%;">\s*<b>\K[^<]+~
但请记住,解析HTML的好方法是使用DOM。 (您没有为示例提供足够的源代码)