求助:编写匹配两种指定格式字符串的正则表达式问题
正则表达式修正方案
你的正则表达式出错的核心原因是把重复次数{14}和{13}错误加在了分组后面——这会让整个分组(比如BILL\d{10})重复14次,总长度变成14×14=196,完全偏离了需求。
正确的正则应该直接匹配两种格式的完整字符串,同时自然满足长度要求:
^(BILL\d{10}|AAAASPA\d{6})$
匹配逻辑说明:
BILL\d{10}:BILL占4个字符,加上10位数字,总长度恰好14AAAASPA\d{6}:AAAASPA占7个字符,加上6位数字,总长度恰好13^和$锚定整个字符串,避免出现部分匹配的情况
内容的提问来源于stack exchange,提问作者Amir Choubani
相关产品推荐
相关产品推荐

