preg_match用于括号中的信息

时间:2011-06-16 20:32:18

标签: php preg-match

(ACCTG)会计

上面的文字我试图在括号中获取信息我将如何在php中执行此操作,这是我到目前为止所拥有的。

$regex = '#\((([^()]+|(?R))*)\)#';
if (preg_match_all($regex, $string ,$matches)) {
    echo implode(' ', $matches[1]);
} else {
    //no parenthesis
    echo $string;
}

2 个答案:

答案 0 :(得分:1)

这不足够吗:

\(([^\)]*)\).*

答案 1 :(得分:1)

我将特殊字符转换为十六进制,以便在我的正则表达式中使用

<?
$input = 'abc ("an example")';
if(preg_match("/\x28([^\x29]+)\x29/", $input, $matched)) { 
     //...         
    print_r($matched); 
} else { 
   //do something.. 
}
?>