3

测试字符串:

Organic whole wheat bread, Monterey Jack Cheese (milk, cheese culture, salt), Hormel Natural Ham (salt, turbinado sugar, lactic acid (not from milk)

期望的输出:

Array ( 
        [0] => Organic whole wheat bread 
        [1] => Monterey Jack Cheese
        [2] => Hormel Natural Ham
      )

我不介意子成分是否与原始项目一起出现(即“蒙特利杰克奶酪(牛奶、奶酪文化、盐)”),我只是不希望它们单独出现,因为它们没有添加成分.

我在这里发现了一些其他问题,我尝试将其应用于我的问题,但我从未得到预期的输出。

哦,如果 preg_split 不是以 PHP 为中心的,我正在使用 PHP。

提前致谢!

4

1 回答 1

1

我将首先删除所有括号及其内容:

$result = preg_replace('/\s*\([^()]+\)/', '', $subject);

然后preg_split()在剩余的逗号上。这假设括号没有嵌套。

如果括号可以嵌套,那么您将需要运行与嵌套级别一样多的次数。每次,最里面的括号将被删除。

于 2009-12-31T22:33:29.593 回答