Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP preg_与html标记匹配_Php_String_Preg Match - Fatal编程技术网

PHP preg_与html标记匹配

PHP preg_与html标记匹配,php,string,preg-match,Php,String,Preg Match,我在试着从一个模式中提取一些字符串 字符串是 <br /><br /><br />Text i want here <br /></div> 我想要的文本在这里 我想要“我想要这里的文字” 我的尝试是 preg_match('!<br /><br /><br />(.*?)<br /></div>!xi', $homepage, $matches); preg_matc

我在试着从一个模式中提取一些字符串

字符串是

<br /><br /><br />Text i want here
<br /></div>



我想要的文本在这里
我想要“我想要这里的文字”

我的尝试是

preg_match('!<br /><br /><br />(.*?)<br /></div>!xi', $homepage, $matches);
preg_match('!


(.*?
!xi',$homepage,$matches);
但失败了

**我使用x是因为它们之间可能有一些空白或\n

<br />
<br />
<br />Text u want here
<br /></div>



此处显示您想要的文本
使用
带标签(



我想在这里显示的文本

将从字符串中删除所有HTML和PHP标记。

使用
删除标记(“




我想要的文本
”)


将从字符串中删除所有HTML和PHP标记。

如果您想坚持使用正则表达式,则需要考虑原始字符串是多行的,这就是它不匹配的原因。您应该尝试使用
s
修饰符,并允许在标记之间匹配换行符(例如

.
.
.
(.*)
.
.*s
可以)@Muthu Kumaran这是一个完整的html文档,所以我不能只删除标记,因为我想在整个html中找到一个特定的部分:)@Michal特洛伊霍夫斯基我尝试了,但仍然一无所获/如果您想坚持使用正则表达式,那么您需要考虑原始字符串是多行的,这就是它不匹配的原因。您应该尝试使用
s
修饰符,并允许在标记之间匹配换行符(例如

.
.
.
(.*)
.
.*s
可以)@Muthu Kumaran这是一个完整的html文档,所以我不能只删除标记,因为我想在整个html中找到一个特定的部分:)@Michal特洛伊霍夫斯基我尝试了,但仍然一无所获/欢迎来到堆栈溢出!请避免使用正则表达式解析HTML,因为它会。请改用。欢迎使用堆栈溢出!请避免使用正则表达式解析HTML,因为它会。改用一个字母。