我希望能够匹配一个包含零个或多个项目的列表中,在零个或多个项目之前(和之后)匹配所有内容。这是我目前正在使用的:
例如,句子
基本上,我的目标是从成分+数量字符串中找到成分,上面的句子匹配
以下是更多示例:
(?<=\))(.*)(?=(or|,|\())
在这种情况下,我想匹配右括号)
后面的所有内容,在or
、,
或)
之前的所有内容。这样做效果还不错(可能不是最优解),但是如果没有这三项中的任何一项匹配,就没有匹配结果。例如,句子
2 cups (500 ml) mushroom, or vegetable broth
匹配mushroom
,但是2 cups (500 ml) mushroom
没有匹配任何内容。基本上,我的目标是从成分+数量字符串中找到成分,上面的句子匹配
mushroom
,而句子salt
匹配整个字符串salt
。以下是更多示例:
1 thyme sprig
应该匹配thyme sprig
1 garlic clove, chopped
应该匹配garlic clove
1 cup (180 g) quinoa, rinsed and drained
应该匹配quinoa
2 tbsp (30 ml) olive oil, plus more for serving
应该匹配olive oil
Vegan Parmesan, to taste
返回Vegan Parmesan
前两个和后两个之间的区别很棘手,因为如果有一个右括号(如在最后两个示例中),则成分应在右括号后面。如果没有右括号(如在前两个示例中),则应取出数字后面的所有内容。