我遇到了RegEx和WhiteSpaces的问题。
我想在一个标有(....)
的数组中拆分文本preg_match_all("/\([a-z0-9\s]+\)/i", $str,$a);
要抓住空白,我试图使用[\ 040] [\ s],但没有任何对我有用!
是否有可能说[任何角色数字和白垩及特殊字符]?
格尔茨
fluxa
答案 0 :(得分:1)
你也可以说“任何字符,但不是)
”
用你的例子:
preg_match_all("/\([^\)]+\)/i", $str, $a);
答案 1 :(得分:0)
您可以使用lazy search代替.*?
(这将尽快停止匹配,与贪婪,.*
相比,它将尽可能匹配。)
正则表达式:\((.*?)\)
在代码中:
preg_match_all("#\((.*?)\)#", $str, $a);