我需要验证表单中的条目。我正在使用/^\d{9}[A-Z]$/
检查9位数字和单个大写字符。我被告知输入可以是单个大写字符和9个数字或9个数字和一个大写字符,但不是单个大写字符,然后是9个数字,然后是单个大写字符。
基本上A123456789
或123456789A
是可以接受的,但不是A123456789A
我将使用什么RegEx来验证开头或结尾处是否至少有一个单个大写字符,但不是两个...后面或前面都有9位数?
答案 0 :(得分:6)
如果你想在一个正则表达式中,这应该做:
(^\d{9}[A-Z]$)|(^[A-Z]\d{9}$)
答案 1 :(得分:0)
如果你的正则表达式支持它,你可以使用条件:
^([A-Z])?\d{9}(?(1)|[A-Z])$
说明:
^
([A-Z])? # optional capture group
\d{9}
(?(1) # if capture group 1 exist
# then there is nothing
| # ELSE
[A-Z] # there is an uppercase letter
)
$