Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.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 正则表达式:如果有html标记,则忽略_Php_Html_Regex_Tags - Fatal编程技术网

Php 正则表达式:如果有html标记,则忽略

Php 正则表达式:如果有html标记,则忽略,php,html,regex,tags,Php,Html,Regex,Tags,我有一个正则表达式模式: \(\s*\'\s*(.*?)\s*\'\) 此模式意味着,获取('text')之间的任何文本 有一个问题:文本可能有HTML标记 所以我想要一个模式。如果没有找到HTML标记,则正常获取文本,但如果找到HTML标记,则模式将获取标记之间的文本 例如: 如果文本是 ('foo foo text here') 模式得到: 这里是foo-foo文本 如果文本为: ('foo foo text here') 这种模式越来越流行 这里是foo-foo文本 因此,模式将忽略

我有一个正则表达式模式:

\(\s*\'\s*(.*?)\s*\'\)
此模式意味着,获取('text')之间的任何文本

有一个问题:文本可能有HTML标记

所以我想要一个模式。如果没有找到HTML标记,则正常获取文本,但如果找到HTML标记,则模式将获取标记之间的文本


例如:

如果文本是

('foo foo text here')

模式得到:

这里是foo-foo文本


如果文本为:

('foo foo text here')

这种模式越来越流行

这里是foo-foo文本

因此,模式将忽略HTML标记(如果有),并获取文本。

您可以在
preg\u match()中调用。这将转变为:

('<div class='test'> foo foo text here </div>')
然后,您设计的正则表达式将删除paren

preg_match("/\(\s*\'\s*(.*?)\s*\'\)/", strip_tags($yourstring), $matches);
您可以在
preg\u match()中调用
。这将转变为:

('<div class='test'> foo foo text here </div>')
然后,您设计的正则表达式将删除paren

preg_match("/\(\s*\'\s*(.*?)\s*\'\)/", strip_tags($yourstring), $matches);

我相信这也行得通:

>\s*(.*?)\s*</|\(\s*\'(?!<)\s*(.*?)\s*\'\)

\s*(*?)\s*我相信这同样有效:

>\s*(.*?)\s*</|\(\s*\'(?!<)\s*(.*?)\s*\'\)

\s*(.*)\s*我需要一个按钮来帮我完成这个任务。不要正则表达式HTML,解析它!和往常一样:这不是一个HTML解析问题。这是一个伪装成HTML解析问题的HTML剥离问题。很棘手,很棘手。你说得对。不过,我还是喜欢找借口使用这个链接我需要一个能帮我做这个的按钮。不要正则表达式HTML,解析它!和往常一样:这不是一个HTML解析问题。这是一个伪装成HTML解析问题的HTML剥离问题。很棘手,很棘手。你说得对。不过,我还是喜欢找借口使用这个链接