【发布时间】:2014-08-15 03:42:17
【问题描述】:
我正在尝试编写一个匹配类似于以下字符串的正则表达式:
Yu MSBE26
w AWAQBNL
我正在使用 Javascript 并想出了以下正则表达式:
(.*?(?:[AWMS\d]{2})[AWMS\d]{2}[A-Z]{2}[\dA-Za-z]{1,3})
换句话说,我通过匹配所有内容开始我的捕获组,直到遇到[AWMS\d]{2} 模式,然后我匹配[AWMS\d]{2} 模式,随后的[A-Z]{2},最后匹配[\dA-Za-z]{1,3} 以匹配最后两个或三个字符。
根据我的阅读,这应该可以工作,但我没有得到任何匹配项。
例如,当我使用正则表达式测试器时,我没有得到任何匹配:Sample
【问题讨论】:
-
您能再分享一些您预期的匹配项和不匹配项吗? This doesn't work(很明显)很难知道你期望的工作是什么。
-
我编辑了我的问题,将我的样本包含在正则表达式测试器中。我正在尝试匹配这两个字符串,但对我来说为什么不匹配并不明显。谢谢。
-
我很确定它不匹配,因为您的非捕获组在 NC 组之后再次重复。猜测这是一个错误。删除它,它工作正常。
-
@Mutuelinvestor 您的正则表达式无法匹配您的字符串,因为与我在回答中详述的模式不匹配。
-
a-Z在[\dA-Za-Z]{1,3}中是不是拼写错误?如果没有,那么它将无法按预期工作。
标签: javascript regex