其他教程

其他教程

Products

当前位置:首页 > 其他教程 >

正则表达式验证电话号码

GG网络技术分享 2025-03-18 16:15 2


问题描述:

01-12345678(第一位为0,第二位为1或2,第三位为1-9,后面七位也0-9)

网友观点:

 0(1|2)[1-9]\\d{7}

电话号码正则表达式(支持手机号码,3-4位区号,7-8位直播号码,1-4位分机号) ((\\d{11})|^((\\d{7,8})|(\\d{4}|\\d{3})-(\\d{7,8})|(\\d{4}|\\d{3})-(\\d{7,8})-(\\d{4}|\\d{3}|\\d{2}|\\d{1})|(\\d{7,8})-(\\d{4}|\\d{3}|\\d{2}|\\d{1}))$)

匹配格式:
11位手机号码
3-4位区号,7-8位直播号码,1-4位分机号
如:12345678901、1234-12345678-1234

\\\"^\\d+$\\\"  //非负整数(正整数 + 0)

\\\"^[0-9]*[1-9][0-9]*$\\\"  //正整数

\\\"^((-\\d+)|(0+))$\\\"  //非正整数(负整数 + 0)

\\\"^-[0-9]*[1-9][0-9]*$\\\"  //负整数

\\\"^-?\\d+$\\\"    //整数

\\\"^\\d+(.\\d+)?$\\\"  //非负浮点数(正浮点数 + 0)

\\\"^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*))$\\\"  //正浮点数

\\\"^((-\\d+(.\\d+)?)|(0+(.0+)?))$\\\"  //非正浮点数(负浮点数 + 0)

\\\"^(-(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-9][0-9]*)))$\\\"  //负浮点


\\\"^(-?\\d+)(.\\d+)?$\\\"  //浮点数

\\\"^[A-Za-z]+$\\\"  //由26个英文字母组成的字符串

\\\"^[A-Z]+$\\\"  //由26个英文字母的大写组成的字符串

\\\"^[a-z]+$\\\"  //由26个英文字母的小写组成的字符串

\\\"^[A-Za-z0-9]+$\\\"  //由数字和26个英文字母组成的字符串

\\\"^\\w+$\\\"  //由数字、26个英文字母或者下划线组成的字符串

\\\"^[\\w-]+(.[\\w-]+)*@[\\w-]+(.[\\w-]+)+$\\\"    //email地址

\\\"^[a-zA-z]+://(\\w+(-\\w+)*)(.(\\w+(-\\w+)*))*(\\?\\S*)?$\\\"  //url

/^13\\d{9}$/gi手机号正则表达式

public static bool IsValidMobileNo(string MobileNo)
{
const string regPattern = @\\\"^(130|131|132|133|134|135|136|137|138|139)\\d{8}$\\\";
return Regex.IsMatch(MobileNo, regPattern);
}

正则表达式--验证手机号码:13[0-9]{9}
实现手机号前带86或是+86的情况:^((+86)|(86))?(13)\\d{9}$
电话号码与手机号码同时验证:(^(\\d{3,4}-)?\\d{7,8})$|(13[0-9]{9})

提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) = *(\'|\\\")?(\\w|\\|\\/|.)+(\'|\\\"| *|>)?

提取信息中的邮件地址:\\w+([-+.]\\w+)
@\\w+([-.]\\w+)*.\\w+([-.]\\w+)*

提取信息中的图片链接:(s|S)(r|R)(c|C) = *(\'|\\\")?(\\w|\\|\\/|.)+(\'|\\\"| *|>)?
提取信息中的IP地址:(\\d+).(\\d+).(\\d+).(\\d+)

提取信息中的中国手机号码:(86)*0*13\\d{9}

提取信息中的中国固定电话号码:((\\d{3,4})|\\d{3,4}-|\\s)?\\d{8}

提取信息中的中国电话号码(包括移动和固定电话):((\\d{3,4})|\\d{3,4}-|\\s)?\\d{7,14}

提取信息中的中国邮政编码:[1-9]{1}(\\d+){5}

提取信息中的中国身份证号码:\\d{18}|\\d{15}

提取信息中的整数:\\d+

提取信息中的浮点数(即小数):(-?\\d
).?\\d+

提取信息中的任何数字 :(-?\\d*)(.\\d+)?

提取信息中的中文字符串:[\\u4e00-\\u9fa5]*

提取信息中的双字节字符串 (汉字):[^\\x00-\\xff]*

区号+座机号码+分机号码:regexp=\\\"^(0[0-9]{2,3}/-)?([2-9][0-9]{6,7})+(/-[0-9]{1,4})?$\\\" 手机(中国移动手机号码):regexp=\\\"^((/(/d{3}/))|(/d{3}/-))?13[456789]/d{8}|15[89]/d{8}\\\"所有手机号码:regexp=\\\"^((/(/d{3}/))|(/d{3}/-))?13[0-9]/......
答案就在这里:验证电话号码正则表达式
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

0 [1-2]-[1-9][0-9]{7}$

01-12345678(第一位为0,第二位为1或2,第三位为1-9,后面七位也0-9)

正则: \\\"0[12][^0][0-9]{7}\\\" [12]表示是1或者2 [^0]表示除0之外 [0-9]{7}表示7位0到9的数字

不是我没有采纳,我把大家给的正则在测试工具上测了,但都没有匹配到。

private static void matcher() {
String s = \\\"01-12345678\\\";
String sRegEx = \\\"0[1|2]-[1-9]\\d{7}\\\";
Pattern p = Pattern.compile(sRegEx);
Matcher m = p.matcher(s);
System.out.println(m.matches());
}

快速学会正则表达式

private static void matcher() {
String s = \\\"01-12345678\\\";
String sRegEx = \\\"0[1|2]-[1-9]\\d{7}\\\";//斜杠是两个
Pattern p = Pattern.compile(sRegEx);
Matcher m = p.matcher(s);
System.out.println(m.matches());
}

其实,如果你是做项目的话,正则表达式匹配号码不行的,因为会有不断新的号码网段出来,建议去网上找插件用吧

Java正则表达式判断是否为手机号码(支持最新166、188、199号段)

转载请注明原文出处:https://www.obatis.com/article/2020102010315350032164324759

标签: 直播

提交需求或反馈

Demand feedback