尝试创建与parentheis中的任何字符匹配的正则表达式。
我的正则表达式是这个
preg_match('/\((.*?)\)/', $listanswer, $answer);
括号内的所有字符串都是匹配模式。但问题是,当我尝试匹配时,。 (this word), (sample data)
它只返回null。如果没有添加空格,则匹配。对此有何想法?
已在此处测试过。 http://regex101.com
它运作得很好。我错过了什么>?
答案 0 :(得分:3)
由于您的输入中没有(nested (parentheses))
:
要匹配(the parentheses too)
使用\([^)]*\)
(demo)
要匹配(what's inside?
),请使用(?<=\()[^)]*(?=\))
(demo)
(?<=\()
lookbehind断言先前的是一个左括号。然后我们匹配任何不是关闭parens的字符。然后(?=\))
前瞻断言后面的内容是一个右括号。答案 1 :(得分:1)