电话号码的Javascript正则表达式

电话号码的Javascript正则表达式,javascript,regex,Javascript,Regex,我完成了这项工作,并编写了以下正则表达式: /^([0-9.]+)$/ 这满足以下条件: 123.123.123.132 123123213123 现在我需要为这个正则表达式添加一个额外的功能,它可以在电话号码中包含一个字母,如 123.a123.b123.123 但不是 123.aa1.bb12 我试过了 /^([0-9.]+\w{1})$/ 在(点)符号之间只能包含一个字母表。 有人能帮我吗 提前谢谢 您使用的模式^([0-9.]+)$使用一个匹配所列任何字符的字符,并重复匹配的1+次

我完成了这项工作,并编写了以下正则表达式:

/^([0-9.]+)$/

这满足以下条件:

123.123.123.132
123123213123
现在我需要为这个正则表达式添加一个额外的功能,它可以在电话号码中包含一个字母,如

123.a123.b123.123
但不是

123.aa1.bb12
我试过了

/^([0-9.]+\w{1})$/

在(点)符号之间只能包含一个字母表。 有人能帮我吗


提前谢谢

您使用的模式
^([0-9.]+)$
使用一个匹配所列任何字符的字符,并重复匹配的1+次,例如
123.123.132

这是一种广泛的匹配,不考虑匹配字符的位置

如果您的值以1+位开始,并且可选的a-z可以正好位于点之后,您可以使用:

^\d+(?:\.[a-zA-Z]?\d+)*$
解释

  • ^
    字符串的开头
  • \d+
    匹配1+个数字
  • (?:
    非捕获组
    • \.[a-zA-Z]?\d+
      匹配一个点,后跟可选的a-zA-Z和1+位
  • )*
    关闭分组并重复0多次
  • $
    字符串的结尾

请看

几句话:Java和JavaScript不一样,它们甚至不相关。如果您想让我们帮助您找出代码哪里出了问题,请向我们展示您的代码。如果你还没有写过,那就从那开始吧。不要指望我们为您做这件事。
123.1a23.1b23.123
?@NicholasK中间的一个字符是正确的。所以正则表达式也应该满足这个条件