public static boolean validateTelAndMobileNo(String mobileNo){
//String test = "00911234567891";
return !(!mobileNo.matches("(00972|0|\\+972)[5][0-9]{8}") && !mobileNo.matches("(00970|0|\\+970)[5][0-9]{8}") && !mobileNo.matches("(05[0-9]|0[12346789])([0-9]{7})") && !mobileNo.matches("(00972|0|\\+972|0|)[2][0-9]{7}"));
}
查看VB.net
Public Function validateMobileNo(m As String) As boolean
If String.IsNullOrWhiteSpace(m) Then Return false
return not (Not Regex.IsMatch(m, "(00972|0|\\+972)[5][0-9]{8}") AndAlso Not Regex.IsMatch(m, "(00970|0|\\+970)[5][0-9]{8}") AndAlso Not Regex.IsMatch(m, "(05[0-9]|0[12346789])([0-9]{7})") AndAlso Not Regex.IsMatch(m, "(00972|0|\\+972|0|)[2][0-9]{7}"))
End Function
cellular israeli regex
/^05\d([-]{0,1})\d{7}$/
all numbers israel
/^0\d([\d]{0,1})([-]{0,1})\d{7}$/
Update one Regex for all Isrealy numbers
^\+?(972|0)(\-)?0?(([23489]{1}\d{7})|[5]{1}\d{8})$
8条答案
按热度按时间t1rydlwq1#
我猜
0
在mandetory的开头,所以你可以使用下面的正则表达式:在regex101中检查0\d-\d{7}
。\d
表示[0-9],{num}
表示精确重复num
次ca1c2owp2#
0\d-\d{7}
正确。您可以尝试
\b0\d-\d{7}\b
以避免将“09-8222333”与“3209-8222333435”匹配。使用
\b0\d[- ]\d{7}\b
表示带有空格而不是破折号的数字,如“09 8222333”。使用
\b((0\d[- ]\d{7})|(0\d[- ]\d{3}[- ]\d{4}))\b
添加对在前三个符号后用破折号或空格分隔的数字的支持,如“06 455 3535 or 04 242-3424”。在http://regexr.com/学习正则表达式,它是关于javascript正则表达式的,但也适用于c#,参见http://www.tutorialspoint.com/csharp/csharp_regular_expressions.htm的c#示例。
smdncfj33#
此处为:https://regex101.com/r/jiSGUV/1
或者直接复制正则表达式:第一个月
cunj1qz14#
类似这样的方法应该可以奏效:
[0-9]{2}
将匹配0
and
9之间的任意数字两次,-
将匹配单个连字符,然后[0-9]{7}
将匹配0
和9
之间的任意数字7
次。您还可以使用问题中的
\d
数字标识符来替换[0-9]
zpjtge225#
适用于android
查看VB.net
这将验证以色列和巴勒斯坦的移动的号码和电话号码,您可以调整以轻松删除巴勒斯坦手机和固定电话
iyfjxgzm6#
您可以使用以下正则表达式
答案基于Wassem的博客文章,您可以阅读here
vsdwdz237#
以下是一个以色列电话号码正则表达式,带有以下以色列前缀:02-09 {7}、05 {8}、07 {8}:
第一个月
(This regex仅在以色列地区匹配,对于以色列以外的地区,您应将regex开头的0数字替换为972数字)
svmlkihl8#
这包括所有电话号码,包括固定电话和071,072,073,074,075,076,077前缀: