繁体   English   中英

Javascript正则表达式数值范围

[英]Javascript regular expression numeric range

有人可以帮忙提供正则表达式吗? 我正在尝试格式化电话号码并处理一系列的分机号码。 我尝试使用范围[1-5],但这似乎不起作用。

$(".phone").text(function(i, text) {
    if(text.length == 10) { //this portion works fine
        text = text.replace(/(\d{3})(\d{3})(\d{4})/, "($1) $2-$3");
        return text;
    }else if (text.length > 10) { //this is where I need help
        text = text.replace(/(\d{3})(\d{3})(\d{4})(\d{[1-5]})/, "($1) $2-$3 x$4");
        return text;
    }
});

这里有一个正则表达式可以处理一系列数字吗?

是的,省略方括号并使用逗号。

\d{1,5}

您对{[1-5]}的使用无效。 {和}表示匹配数在其中包含的两个数字之间(可以省略任何一个参数),而[1-5]匹配1、2、3、4或5个字符。您需要:

    text = text.replace(/(\d{3})(\d{3})(\d{4})(\d{1,5})/, "($1) $2-$3 x$4");

代替。 有关更多信息,请参见此重复快速入门

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM