Regex 正则表达式匹配错误的值
你好,, 我的正则表达式应该匹配:Regex 正则表达式匹配错误的值,regex,Regex,你好,, 我的正则表达式应该匹配: 5 40.33 23.50/x4:50.22 11/x2:50/x4:68/x6:102.48 我试着描述。。。有无限个块,以“/”分隔。第一个块始终只是一个浮点值。所有其他块都以“x[0-9]+:”开头,然后是浮点值 但我的正则表达式也匹配: /^(?:(?:x[0-9]{1,3}:[0-9]+(?:\.?[0-9]{1,2})?)|(?:[0-9]+(?:.[0-9]{1,2})?))(?:\/x[0-9]{1,3}:[0-9]+(?:\.?[0-9]{1
5
40.33
23.50/x4:50.22
11/x2:50/x4:68/x6:102.48
我试着描述。。。有无限个块,以“/”分隔。第一个块始终只是一个浮点值。所有其他块都以“x[0-9]+:”开头,然后是浮点值
但我的正则表达式也匹配:
/^(?:(?:x[0-9]{1,3}:[0-9]+(?:\.?[0-9]{1,2})?)|(?:[0-9]+(?:.[0-9]{1,2})?))(?:\/x[0-9]{1,3}:[0-9]+(?:\.?[0-9]{1,2})?)*$/
由于
(?:(?:x[0-9]{1,3}:[0-9]+(?:\.?[0-9]{1,2})|(?:[0-9]+(?:[0-9]{1,2}),(?:[0-9]+(?:[0-9]{1,2})
)匹配。你忘了转义(?:[0-9]
。该点与除换行符以外的任何字符都匹配。你能给出更多应该和不应该匹配的例子吗?40/50
是匹配的,因为(?:(?:x[0-9]{1,3}:[0-9]+(?:\.[0-9]{1,2}));(?:[0-9]+(?:[0-9]{1,2})你忘了转义。[0-9]
。点与除换行符以外的任何字符都匹配。是的,“5”和“40.33”应该匹配。哦,就是这样。非常感谢@Wiktor
40/50