首页 > 解决方案 > 用于实时验证电话号码的正则表达式,包括 x

问题描述

我正在使用/^[0-9]+(x|X){0,1}[0-9]*?$/g正则表达式,这适用于nth number of digits + x + nth number of digits.

但我想 - 10 digits + x + 5 digits

Stackblitz 代码

例子 -1234567890x12345

因此,请为我提供上述示例的正则表达式,以防止用户输入第 n 个数字。

有效输入:

1234567890
1234567890x1
1234567890X1
1234567890x12345

无效输入:

12345678901
1234567890x123456
1234567890X123456

标签: javascriptregexangular

解决方案


为确保用户只能在输入字段中键入有效字符串,您需要使用正则表达式进行实时验证,例如

^[0-9]{1,10}(?:[xX][0-9]{0,5})?$

查看正则表达式演示

图案细节

  • ^- 字符串的开始
  • [0-9]{1,10}- 一到十位数字(更改为{0,10}也允许空字符串)
  • (?:[xX][0-9]{0,5})?- 一个可选的序列
    • [xX]- 一个xX
    • [0-9]{0,5}- 零到五位数
  • $- 字符串结束。

推荐阅读