Javascript 唯一数的正则表达式。

Javascript 唯一数的正则表达式。,javascript,php,regex,Javascript,Php,Regex,我需要一个验证唯一值的正则表达式。它有一个唯一的9位数字,格式为000000000 a(其中0是数字,a是字母)。仅允许字母“V”或“X”作为最后一个字符串 ^[1-9][0-9]{9}$ 我可以对数字进行修改,但不确定如何修改最后一个字符串 ^[1-9][0-9]{9}$ 希望有人能帮助我 您可以使用字符类[VX],它将匹配其中的单个字符 ^[1-9][0-9]{8}[VX]$ 或,或条件如下 ^[1-9][0-9]{8}(V|X)$ 更新: 要不区分大小写地匹配字母表,请使用i标志

我需要一个验证唯一值的正则表达式。它有一个唯一的9位数字,格式为000000000 a(其中0是数字,a是字母)。仅允许字母“V”或“X”作为最后一个字符串

^[1-9][0-9]{9}$
我可以对数字进行修改,但不确定如何修改最后一个字符串

^[1-9][0-9]{9}$

希望有人能帮助我

您可以使用字符类
[VX]
,它将匹配其中的单个字符

^[1-9][0-9]{8}[VX]$
或,
条件如下

^[1-9][0-9]{8}(V|X)$

更新:

要不区分大小写地匹配字母表,请使用
i
标志,或者也可以在类中添加小写字符

^[1-9][0-9]{8}[VvXx]$

您也可以尝试更简单的方法(除非前导数字不能为0)


为什么不干脆
d{9}
<代码>/\d{9}(V|X)/似乎更容易

var test = "qwerty000000000Xqwerty";

console.log(test.match(/\d{9}(V|X)/));
-也匹配
8303670V

不区分大小写的add
/i
->/
\d{9}(V|X)/i
->您可以执行以下操作:

^[1-9][0-9]{8}[VX]$
或者更一般地说,如果后缀是多个字符,则可以使用组。由于您似乎正在使用POSIX扩展正则表达式(ERE)语法,您还可以对组使用括号,如:

^[1-9][0-9]{8}(V|X)$


如何修改以匹配
X,V
@user3733831的区分大小写我猜您的意思是
不区分大小写
,您可以使用
I
标记检查
X.V
的区分大小写。我试过像这样的
^[1-9][0-9]{8}(V|X)$/I
,但它没有work@user3733831使用不区分大小写的标志
/^[1-9][0-9]{8}[VX]$/i
,或者您也可以使用
[VvXx]
将问题标记为JavaScript和PHP。很明显,不能两者都是,但两者都不是POSIX ERE。是的,我没有注意到标签。我刚刚看到了{8},可以看出它一定在大RE家族的某个地方。看起来JavaScriptRes是一种退化的Perl兼容的RE,但它应该是ERE的纯超集。谁知道PHP是什么。