我有函数,并放在html代码中。这些函数具有以下语法规则:
这不是我真正的职能,但它提供了上述规则的全部思想:
<html>
#v123w(r(!@3o=?w){
<div></div>
}#
#131ie_w(13gf$>&*()(*&){
<div></div>
}#
</html>
一直以来,我都使用此正则表达式捕获函数中的所有函数名称,参数和html字符串:
#(\w+)\(*([\w\d\s\=\>\<\[\]\"\'\)\(\&\|\*\+\-\%\@\^\?\/\$\.\!]*)\)\)*{((?:(?R)|.)*?)}#
这是结果:
您可以在regex测试器中查看详细信息: https://regex101.com/r/HdCeeV/1
当前,我发现php中的preg_match_all函数不适用于长字符串。因此,如果函数内的html代码太长,则无法使用此正则表达式。我需要捕获函数名称,函数参数和函数内的html字符串。此正则表达式有其他选择吗?也许使用PHP文件功能,例如substr,strpos等?
答案 0 :(得分:1)