PHP-preg_匹配(string),(string),
这是我的字符串:PHP-preg_匹配(string),(string),,php,preg-match,Php,Preg Match,这是我的字符串: (name1=value1),(name1=value1a,value1b,value1c),(name2=value2),... 我想要括号内的字符串。是指: name1=value1 name1=value1a,value1b,value1c name2=value2 等等…请注意,括号内可以是除(和)之外的任何字符 如果您想要一个纯正则表达式的答案,可以使用lookahead/lookahead断言: preg_match_all("/(?<=\().*(?=\
(name1=value1),(name1=value1a,value1b,value1c),(name2=value2),...
我想要括号内的字符串。是指:
name1=value1
name1=value1a,value1b,value1c
name2=value2
等等…请注意,括号内可以是除(和)之外的任何字符 如果您想要一个纯正则表达式的答案,可以使用lookahead/lookahead断言:
preg_match_all("/(?<=\().*(?=\))/U", $text);
以及输出:
Array
(
[0] => Array
(
[0] => name1=value1
[1] => name1=value1a,value1b,value1c
[2] => name2=value2
)
)
这里是另一个使用
explode()的解决方案。
:
伟大的非常感谢你!
$text = "(name1=value1),(name1=value1a,value1b,value1c),(name2=value2)";
preg_match_all("/(?<=\().*(?=\))/U", $text, $matches);
print_r($matches);
Array
(
[0] => Array
(
[0] => name1=value1
[1] => name1=value1a,value1b,value1c
[2] => name2=value2
)
)
<?php
$str="(name1=value1),(name1=value1a,value1b,value1c),(name2=value2)";
$str = substr($str, 1, -1);
$results=explode('),(', $str );
?>
Array
(
[0] => name1=value1
[1] => name1=value1a,value1b,value1c
[2] => name2=value2
)