我有格式数据:
Randomtext1(random2,random4)Randomtext2(ran dom)Randomtext3 Randomtext4(random5,random7,random8)
所以我想知道Randomtext-part和带括号的文本,如果它与preg_match_all一起,但我不知道如何完成它。括号中的内容与Randomtext-part一起使用,一些Randomtext-parts包含它,其中一些不适用。
这是我到目前为止所做的,它在大多数情况下都适用,但如果文本没有任何括号,那么它将整个事物与一个匹配。
preg_match_all("/([a-zA-Z]+)\s+(?([a-zA-Z, ]*))?/",$text,$matches);
有什么想法吗?
答案 0 :(得分:1)
preg_match_all("/\b\w+\b(?:\s*\(.*?\)|)/", $text, $matches);