Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何通过正则表达式获取括号的内容?_Php_Regex - Fatal编程技术网

Php 如何通过正则表达式获取括号的内容?

Php 如何通过正则表达式获取括号的内容?,php,regex,Php,Regex,我想通过正则表达式获取PHP中字符串中括号的内容。我试过这个正则表达式 preg_match_all('/\((.*)?\)/', $string, $match); 但是这会得到第一个(和最后一个)之间的内容。如何分别获取每个()的内容以使数组匹配?您需要使用[^\)]*更改*,为什么您觉得需要正则表达式?或者preg\u replace\u回调和递归(?R)正则表达式。(搜索重复项。除非您只是指内部而不是每个括号对。) preg_match_all('/\(([^)]*)\)/', $st

我想通过正则表达式获取PHP中字符串中括号的内容。我试过这个正则表达式

preg_match_all('/\((.*)?\)/', $string, $match);

但是这会得到第一个
和最后一个
之间的内容。如何分别获取每个
()
的内容以使数组匹配?

您需要使用
[^\)]*
更改
*
,为什么您觉得需要正则表达式?或者
preg\u replace\u回调
和递归
(?R)
正则表达式。(搜索重复项。除非您只是指内部而不是每个括号对。)
preg_match_all('/\(([^)]*)\)/', $string, $match);