【发布时间】:2011-04-29 18:27:28
【问题描述】:
我有一个正则表达式,我认为它直到现在都可以正常工作。我需要匹配一个可选字符。它可能存在,也可能不存在。
这里有两个字符串。上面的字符串匹配,而下面的不匹配。较低的字符串中缺少一个字母是导致它失败的原因。
我想在开始的 5 位数字之后获取单个字母,如果它在那里,如果没有,继续获取字符串的其余部分。这封信可以是A-Z。
如果我从正则表达式中删除 ([A-Z]{1}) +.*? +,它将匹配我需要的所有内容,但字母很重要。
20000 K Q511195DREWBT E00078748521
30000 K601220PLOPOH Z00054878524
这是我正在使用的正则表达式。
/^([0-9]{5})+.*? ([A-Z]{1}) +.*? +([A-Z]{1})([0-9]{3})([0-9]{3})([A-Z]{3})([A-Z]{3}) +([A-Z])[0-9]{3}([0-9]{4})([0-9]{2})([0-9]{2})/
【问题讨论】: