一些常见正则表达式(续)
发布时间:2020-12-14 01:44:22 所属栏目:百科 来源:网络整理
导读:1、验证手机号码 (1)、移动:134、135、136、137、138、139、150、151、152、157、158、159、182、183、184、187、188、178(4G)、147(上网卡); 联通:130、131、132、155、156、185、186、176(4G)、145(上网卡); 电信:133、153、180、181、189 、177(4G
1、验证手机号码 (1)、移动:134、135、136、137、138、139、150、151、152、157、158、159、182、183、184、187、188、178(4G)、147(上网卡); 联通:130、131、132、155、156、185、186、176(4G)、145(上网卡); 电信:133、153、180、181、189 、177(4G); 卫星通信:1349; 虚拟运营商:170。 所以正确的号码应该是开头应该是以13、14、15、17、18这些开头,然而其他开头的都不行; (2)、现在中国移动有一些特殊的开头,比如12593长话包,这些也是满足的; (3)、中国的区号+86; (4)、一些手机通讯录存号码的时候,自动加上-,比如:135-1235-6789。 综上所述,可以得到下面的表达式; private static boolean isMobile(String phone) { final String regex = "(+86|12593)?s?(1)(3|4|5|7|8){1}d{1}(-)?d{4}(-)?d{4}"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(phone); return matcher.matches(); }说明:当phone以下格式的时候,返回true
/** * 判断email格式是否正确 * * @param email * @return */ public static boolean isEmail(String email) { // String str = // "^([a-zA-Z0-9_-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.)|(([a-zA-Z0-9-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$"; // Pattern p = Pattern.compile(str); if (TextUtils.isEmpty(email)) { return false; } else { email = email.trim(); } final Pattern p = Pattern.compile("[a-zA-Z0-9+._%-+]{1,256}" + "@" + "[a-zA-Z0-9][a-zA-Z0-9-]{0,64}" + "(" + "." + "[a-zA-Z0-9][a-zA-Z0-9-]{0,25}" + ")+"); final Matcher m = p.matcher(email); return m.matches(); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- MUI+AJAX+Spring MVC 实现照片拍摄和本地相册选取上传
- cocos2d-x-3.3-006-核心概念和相关类-导演
- Oracle创建表语句(Create table)语法详解及示例
- ruby-on-rails – RSpec for Index中的instance_variable
- 【tensorflow2.x】对应的keras版本
- ruby-on-rails – 如何让Devise在Heroku上发送确认电子邮件
- 使用json.NET和C#解析JSON数组
- ruby – Sinatra方法`开发?`undefined
- javaspring中依赖注入原理及举例
- postgresql – cron有多精确?