+ -
当前位置:首页 → 问答吧 → perl 匹配整个函数的正则表达—不能返回

perl 匹配整个函数的正则表达—不能返回

时间:2011-01-09

来源:互联网

见代码

if($fun_text =~ /
                        [\s\w]*\w+\s*\([^\)]*\)     #函数头
                        .*?                         #函数头和{}包含内容之间的部分,采用最小匹配
                        \{([^{}]|(?R))*\}           #函数体{}包含的内容
                        /sx){

正常情况下能匹配函数,
但在有多层括号的时候,不能返回导致perl程序没有响应,
不懂?R的用法,盼指点!

作者: xm1984   发布时间: 2011-01-09

没看懂 (?R) 是个啥意思

作者: socyno   发布时间: 2011-01-09