0

我有以下格式的数据:
Randomtext1 (random2,random4) Randomtext2 (ran dom) Randomtext3 Randomtext4 (random5,random7,random8)

所以我想识别 Randomtext-part 和括号中的文本,如果它与 preg_match_all 一起存在,但我不知道如何完成它。括号中的内容与 Randomtext-part 一起使用,一些 Randomtext-part 有它,而其中一些没有。

这是我到目前为止所拥有的,它在大多数情况下都有效,但如果文本没有任何括号,那么它会将整个内容与一个匹配。
preg_match_all("/([a-zA-Z]+)\s+(?([a-zA-Z, ]*))?/",$text,$matches);

有任何想法吗?

4

1 回答 1

1
preg_match_all("/\b\w+\b(?:\s*\(.*?\)|)/", $text, $matches);
于 2012-06-29T20:00:55.460 回答