Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/241.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_Regex_Wordpress_Match_Gettext - Fatal编程技术网

Php 尝试查找与包含HTML标记的子字符串匹配的正则表达式模式

Php 尝试查找与包含HTML标记的子字符串匹配的正则表达式模式,php,regex,wordpress,match,gettext,Php,Regex,Wordpress,Match,Gettext,基本上,在文本编辑器(coda)中,我需要一个模式来匹配所有那些包含带有html标记的字符串的esc_html_uuuuu()函数: esc_html__( 'string that contains <a href="#">text</a> html tags', TEXT_DOMAIN ) 我的目标是替换该函数并用另一个函数将其包装,使其如下所示: wp_kses( __( 'string that contains <a href="#">text&l

基本上,在文本编辑器(coda)中,我需要一个模式来匹配所有那些包含带有html标记的字符串的esc_html_uuuuu()函数:

esc_html__( 'string that contains <a href="#">text</a> html tags', TEXT_DOMAIN )
我的目标是替换该函数并用另一个函数将其包装,使其如下所示:

wp_kses( __( 'string that contains <a href="#">text</a> html tags', TEXT_DOMAIN ), allowed_html())
wp_kses(uuu('string that contains html tags',TEXT_DOMAIN),allowed_html())
任何帮助都将不胜感激

谢谢

此pcre(php)模式应能:

“esc\u html\uu\(\ s?'(.*]*\/?>。)\s?TEXT\u DOMAIN\s?)”

如果它包含html标记,它应该与字符串匹配,它不是超严格的,不检查标记是否已关闭,但应该可以工作。匹配的字符串位于捕获组1中

您可以在此处进行测试:


如果它不能满足您的所有需求,请告诉我。

为什么不更改esc_html_uuu代码(或覆盖它以检测标记)?@Jandogen不确定我是否理解您的意思。我需要搜索和替换超过100个文件。我必须只针对包含html标记的esc_html函数。我假设这是您正在编辑的程序代码。该代码具有函数*esc\U html*。为什么不改变那个函数而不是所有的函数调用呢?是的,这是一个wordpress主题代码。esc_html__________________________________________________________。我想我可以用一个自定义函数来替换所有这些,该函数将检查字符串是否有html标记。这将是我的第二个选择。我更喜欢保留这些功能,因为wordpress主题提交评论员希望看到这些wordpress功能在任何地方都能使用。感谢ntrp,它可以工作,但它的目标比它应该的更多。看看这个:中间的那些不应该是目标,它匹配函数之外的HTML标签()。我怎样才能让它在
,XT\u TEXT\u DOMAIN)
之后立即停止呢谢谢你的帮助这真让我受不了!我在这件事上浪费了这么多时间,但还是弄不明白!我当然不想手动替换所有这些文件,它有400多个文件:(我更新了答案,这将从
esc\u html\uuuu
匹配到
TEXT\u域)
因此,在更换时它将匹配整个函数调用。感谢您的帮助,但它仍然比您在此处看到的匹配更多。很抱歉,我在提供的链接中没有看到任何文本。。你能从这个网站给我发个例子吗?
wp_kses( __( 'string that contains <a href="#">text</a> html tags', TEXT_DOMAIN ), allowed_html())