Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 沙特阿拉伯移动和陆地线路号码正则表达式验证_Javascript_Regex_Forms_Bootstrap 4 - Fatal编程技术网

Javascript 沙特阿拉伯移动和陆地线路号码正则表达式验证

Javascript 沙特阿拉伯移动和陆地线路号码正则表达式验证,javascript,regex,forms,bootstrap-4,Javascript,Regex,Forms,Bootstrap 4,我一直在尝试验证我的引导表单上的沙特阿拉伯电话号码,但我一直收到无效错误 这是我目前使用的正则表达式 /^(009665|9665|\+9665|05|5)(5|0|3|6|4|9|1|8|7)([0-9]{7})$/ 函数validateContactthisObj{ 让fieldValue=thisObj.val; 设模式=/^009665 | 9665 | \+9665 | 05 | 55 | 0 | 3 | 6 | 4 | 9 | 1 | 8 | 7[0-9]{7}$/; if pa

我一直在尝试验证我的引导表单上的沙特阿拉伯电话号码,但我一直收到无效错误

这是我目前使用的正则表达式

/^(009665|9665|\+9665|05|5)(5|0|3|6|4|9|1|8|7)([0-9]{7})$/
函数validateContactthisObj{ 让fieldValue=thisObj.val; 设模式=/^009665 | 9665 | \+9665 | 05 | 55 | 0 | 3 | 6 | 4 | 9 | 1 | 8 | 7[0-9]{7}$/; if pattern.testfieldValue{ $thisObj.addClass'is-valid'; }否则{ $thisObj.addClass'is-invalid'; } } 联系电话 请输入有效的联系电话。
使用RegExp类将非常容易。这里有一个例子:

var regex=new RegExp/^009665 | 9665 | \+9665 | 05 | 55 | 0 | 3 | 6 | 4 | 9 | 1 | 8 | 7[0-9]{7}$/; 正则表达式测试'0501234567';//返回true;
正则表达式测试'0521234567';//返回false 此模式很容易与数字匹配:

^((?:[+?0?0?966]+)(?:\s?\d{2})(?:\s?\d{7}))$

我使用以下模式:

(?:\+?0*?966)?0?5[0-9]{8}
(?:\+?0*?966)?0?(5[0-9]{8})
如果没有空格,它将匹配如下数字:

966512345678
+966512345678
00966512345678
512345678
0512345678
如果需要规范化数字,请使用以下模式捕获数字512345678:

(?:\+?0*?966)?0?5[0-9]{8}
(?:\+?0*?966)?0?(5[0-9]{8})

然后,您可以在捕获的数字上添加0或966。

我已经创建了一个正确的代码片段。请添加相关的JS、CSS和HTML,使其也成为onsubmit=validate,应该是onsubmit=return validate,其中validate为有效号码返回true请看这里我提交表单没有任何问题,因为我还有其他字段工作正常,我的问题是电话号码的regex验证。除此之外,一切都正常。你能给出一些应该有效的电话号码示例吗?@olasunkanmi该模式可以写为^[+-096]+\s?\d{2}\s?\d{7}$,也可以匹配???????????000000000由于@Thefourthbird,我将尝试使用它。如果您想使用它,请使用呼叫组1再次实现它,这就是为什么我在一个组中实现它。@AmrendraKumar整个匹配都在组1中,该组是唯一捕获到的组,并且将匹配更多的电话号码。这不适用于没有任何prefex的手机号码,例如5393*****