我需要一个正则表达式,给定一个成分线,它会告诉我该成分的数量。以下是一些示例值:
每当存在数量时(除最后一个以外的所有示例),都需要获取数量。因此,对于第一个例子“8盎司半甜巧克力”,它需要返回“8盎司”。
如何使用PHP正则表达式执行此操作?
答案 0 :(得分:2)
对于你的例子(以及我能想到的其他一些例子),
^[ \d/.-]*(?:to\s+[ \d/.-]*)?(?:ounces?|cups?|(?:table|tea)spoons?)?
会起作用。
如果你想避免捕获一个尾随空格(因为这个正则表达式会在一个单元后面没有一个数字后执行),所以将(?=\s)
添加到正则表达式的末尾。