使用javascript和正则表达式

时间:2016-09-30 13:39:28

标签: javascript validation

我想用javascript验证电话号码,到目前为止,我有正则表达式,如下所示:

/^[0-9\+]{8,13}$/

但这不是我最终想要得到的。 我需要获取我国默认的电话号码格式"波兰"。例如,如果用户正确传递了正则表达式,我需要检查几种手机格式:321123321123-321-123123 321 12312321121212-321-12-12,{{1} }。

很抱歉,如果我的问题很愚蠢,但我不知道如何理解这个正则表达式。

2 个答案:

答案 0 :(得分:3)

看起来你允许数字空格和超量。

为什么不删除空格和连字符,并检查其余部分是否为数字。

var str = "123 321 123";
str = str.replace( /\s|-/g, "" );

现在运行你自己的正则表达式

"123 321 123".replace( /\s|-/g, "" ).match(/^[0-9\+]{8,13}$/)

或者只是在正则表达式中包含空格和连字符

"123 321 123".match(/^[0-9\+\s-]{8,13}$/);

答案 1 :(得分:0)

使用以下正则表达式允许 - 并且空格和所有字符应在8到13之间。

^[0-9\s- \+]{8,13}$