Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.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 为什么正则表达式模式与代码不匹配?_Php_Regex_Preg Match All - Fatal编程技术网

Php 为什么正则表达式模式与代码不匹配?

Php 为什么正则表达式模式与代码不匹配?,php,regex,preg-match-all,Php,Regex,Preg Match All,你知道为什么这个正则表达式与下面的代码不匹配吗 $regex = "!<title>(.*?)</title>!i"; $regex=“!(*?)!i”; 代码: &拉阔; 不要使用正则表达式解析XML 您的表达式不起作用,因为点与新行不匹配。添加修饰符/…/s可以解决这一问题,但随后会出现其他问题,如贪婪匹配而不是懒惰匹配 使用XML解析器是一个更好的主意。不要使用正则表达式来解析XML 您的表达式不起作用,因为点与新行不匹配。添加修饰符/…/s可以解决这一问题,

你知道为什么这个正则表达式与下面的代码不匹配吗

$regex = "!<title>(.*?)</title>!i";
$regex=“!(*?)!i”;
代码:


&拉阔;

不要使用正则表达式解析XML

您的表达式不起作用,因为点与新行不匹配。添加修饰符
/…/s
可以解决这一问题,但随后会出现其他问题,如贪婪匹配而不是懒惰匹配


使用XML解析器是一个更好的主意。

不要使用正则表达式来解析XML

您的表达式不起作用,因为点与新行不匹配。添加修饰符
/…/s
可以解决这一问题,但随后会出现其他问题,如贪婪匹配而不是懒惰匹配


使用XML解析器将是一个更好的主意。

以下是我对正确正则表达式的建议:

(?<=<title>)(.*)(?=</title>)

(?以下是我对正确正则表达式的建议:

(?<=<title>)(.*)(?=</title>)

(?是
b:include
一个有效的HTML标记吗?谢谢马克,这解决了我的问题!这是一个博客模板,需要解析并提供下载服务。@hakre:这是XML命名空间中的HTML5文档片段吗?当然不是;)然而,我认为我的结论也是错误的。即使是在XML名称空间中,它也是无效的HTML5。
b:include
是有效的HTML标记吗?谢谢马克,这解决了我的问题!这是一个博客模板,需要解析并提供下载服务。@hakre:这是XML名称空间中的HTML5文档片段吗?当然是)然而,我认为我的结论也是错误的。即使它在XML名称空间中,它也是无效的HTML5。我确实尝试过!没有测试的帖子不是我的工作!我确实试过了!没有测试的帖子不是我的工作!