php 正则匹配函数体

2015-01-24信息快讯网

以PHP为例,其他语言类似

<?php 
$data = php_strip_whitespace('test.php'); //去掉注释,空格,换行(不包括字符串中的) 
echo $data; 
$data = preg_match_all(" 
/ 
function\s+ #匹配function和后面的空格 
[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* #匹配函数名 
\(([^)]*?)\)\s+ #匹配函数参数,并且作为子模式捕获 
\{ 
(.*?) 
\}(?=(?:\s*function|\s*?$)) #匹配大括号,仅当后面紧跟着function或者处于字符串结束位置时 
/xi 
", $data, $matches); 

print_r($matches); 
?>
©2014-2024 dbsqp.com