当我的一个选择后跟空格或为空时的正则表达式

问题描述 投票:0回答:1

我有这个正则表达式:

^((?:[\d,//\½\¼]+\s(?:dag|g|little|l|liter)?(?=\s))|)(.*)

如果我输入:1升牛奶我得到一个匹配。如果我输入1个鸡蛋,我就不会得到1美元的匹配。为什么不?

我如何判断条件应该是升+空格,l +空格等...还是只有数字?

我可以在没有(?= \ s)的情况下制作像(dag | g | little | l |升)这样的单词,但这有点愚蠢...在每个单词之后写空间......

例:

输入字符串:

30 dag beans
around 1,5 liter of water
1 liter
1 egg
1/2 teaspoon water

输出:

30 dag
around 1,5 liter of water
1 liter
1
1/2
regex regex-lookarounds
1个回答
0
投票

检查^((?:\d+(?:\/\d+)?)\s(?:dag|liter)?|.*)。这给出了输出中显示的精确匹配。检查称为Match Information的右中间部分以查看匹配。 - 图莎尔

© www.soinside.com 2019 - 2024. All rights reserved.