好吧,我对regex有一定的经验,但是我经常使用它们进行简单的模式匹配,我在JS中进行此操作,有两种模式可以找到,即PO总是在POO1234和PO1234之间,区别在于,在一种情况下,采购订单后还有一个附加的任意字母,但在两种情况下,其余均为数字。
所以我尝试了/^PO\w{1}\d+$/
,并且它匹配“ PO1234”?现在不需要单个额外的Alpha吗?如果有人可以解释为什么这是一个匹配项并提出解决方案,我将非常感激。
谢谢
答案 0 :(得分:2)
所以我尝试了
html, body { height:100%; }
,并且它匹配“ PO1234”?不是单身 现在需要额外的Alpha吗?
好吧,这里有几点:
您的模式与“ PO1234”匹配,因为/^PO\w{1}\d+$/
与单词字符(表示任何字母数字字符或下划线)匹配。
\w
是多余的。例如,{1}
等于a
。
您实际上不需要两个模式。您可以使用:
a{1}
答案 1 :(得分:0)
\ w是单词字符,为[a-zA-Z0-9],因此它实际上与第一位数字匹配。而是将\ w更改为[A-Z]