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

时间:2015-10-01 09:40:57

标签: php regex wordpress match gettext

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

esc_html__( 'string that contains <a href="#">text</a> html tags', TEXT_DOMAIN )

排除那些没有html标签的人:

esc_html__( 'any string that does not contain html tags', TEXT_DOMAIN )

我的目标是替换该函数并将其与另一个函数包装起来,使它变成这样:

wp_kses( __( 'string that contains <a href="#">text</a> html tags', TEXT_DOMAIN ), allowed_html())

任何帮助将不胜感激,

由于

1 个答案:

答案 0 :(得分:0)

这个pcre(php)模式应该这样做:

"esc_html__\(\s?'(.*<\S+\s?[^>]*\/?>.*)',\s?TEXT_DOMAIN\s?\)"

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

你可以在这里测试一下:

https://regex101.com/r/iF0lN9/3

如果它不符合您的所有需求,请告诉我。