/**
* 验证手机号是否合法
*
* @param mobiles
* 手机号码
* @return
*/
public static boolean isMobileNO(String mobiles) {
Pattern p = Pattern
.compile("^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$");
Matcher m = p.matcher(mobiles);
System.out.println(m.matches() + "---");
return m.matches();
}
/**
* @author 郑明亮
* @Email zhengmingliang911@gmail.com
* @Time 2017年4月24日 上午11:51:18
* @Description <p>判断是不是网址 </P>
* @param url
* @return
*/
public static boolean isWebUrl(String url) {
String patternString = "^((https|http|ftp|rtsp|mms)?://)"
+ "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" //ftp的user@
+ "(([0-9]{1,3}\\.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184
+ "|" // 允许IP和DOMAIN(域名)
+ "([0-9a-z_!~*'()-]+\\.)*" // 域名- www.
+ "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\\." // 二级域名
+ "[a-z]{2,6})" // first level domain- .com or .museum
+ "(:[0-9]{1,4})?" // 端口- :80
+ "((/?)|" // a slash isn't required if there is no file name
+ "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";
Pattern p = Pattern
.compile(patternString);
Matcher m = p.matcher(url);
System.out.println(m.matches() + "---");
return m.matches();
}
/**
* 校验邮箱是否合法
*
* @param s
* 传入的邮箱字符串
* @return
*/
public static boolean isEmail1(String s) {
Pattern pattern = Pattern
.compile("^([a-zA-Z0-9_\\-\\.]+)@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.)|(([a-zA-Z0-9\\-]+\\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\\]?)$");
Matcher matcher = pattern.matcher(s);
return matcher.matches();
}
/**
* Android 工具包自带验证Email方法
*
* @param email
* @return
*/
public static boolean isEmail2(String email) {
return EMAIL_ADDRESS.matcher(email).matches();
}
/**
* @author 郑明亮
* @Time 2017年3月13日 下午6:48:31
* @Description <p> 是否全是中文 </p>
* @param text
* @return {@code true}全是中文 <br> {@code false} 不全是中文、或不是中文
*/
public static boolean isChinessOnly(String text) {
return PATTERN_IS_CHICHNESS.matcher(text).matches();
}
/**
* @author 郑明亮
* @Time 2017年3月13日 下午7:00:37
* @Description <p>判断是否是身份证号 </p>
* @param idCardNum 身份证号
* @return {@code true}符合身份证号验证 <br> {@code false} 不符合身份证号验证
*/
public static boolean isIdCardNumber(String idCardNum){
return PATTERN_IS_ID_CARD_NUMBER_15.matcher(idCardNum).matches()||PATTERN_IS_ID_CARD_NUMBER_18.matcher(idCardNum).matches();
}
// 引用于Android.util.Patterns
public static final Pattern EMAIL_ADDRESS = 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}" + ")+");
/**
* @author 郑明亮
* @Time 2017年3月13日 下午5:50:29
* @Description <p>匹配中文 </p>
*/
public static final Pattern PATTERN_IS_CHICHNESS = Pattern
.compile("^[\\u4e00-\\u9fa5]{0,}$");
/**
* @author 郑明亮
* @Time 2017年3月13日 下午6:58:08
* @Description <p> 15位身份证号验证</p>
*/
public static final Pattern PATTERN_IS_ID_CARD_NUMBER_15 = Pattern
.compile("^[1-9]\\d{7}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}$");
/**
* @author 郑明亮
* @Time 2017年3月13日 下午6:58:13
* @Description <p>18位身份证号验证 </p>
*/
public static final Pattern PATTERN_IS_ID_CARD_NUMBER_18 = Pattern
.compile("^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|X)$");
近期热议
推荐标签 标签
-
Elasticsearch
116 引用 • 99 回帖 • 266 关注
Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
-
生活
228 引用 • 1450 回帖
生活是指人类生存过程中的各项活动的总和,范畴较广,一般指为幸福的意义而存在。生活实际上是对人生的一种诠释。生活包括人类在社会中与自己息息相关的日常活动和心理影射。
-
创造
172 引用 • 990 回帖
你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!
-
Jenkins
51 引用 • 37 回帖
Jenkins 是一套开源的持续集成工具。它提供了非常丰富的插件,让构建、部署、自动化集成项目变得简单易用。
-
小薇
34 引用 • 467 回帖 • 692 关注
小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。
由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!
-
运维
148 引用 • 257 回帖 • 1 关注
互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。
- 链书
-
CAP
11 引用 • 5 回帖 • 563 关注
CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。
-
前端
247 引用 • 1347 回帖 • 1 关注
前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。
-
Kubernetes
108 引用 • 54 回帖
Kubernetes 是 Google 开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。
-
Unity
25 引用 • 7 回帖 • 250 关注
Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。
-
TGIF
284 引用 • 4481 回帖 • 656 关注
Thank God It's Friday! 感谢老天,总算到星期五啦!
-
OnlyOffice
4 引用 • 28 关注
-
服务器
124 引用 • 580 回帖
服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。
- B3log
-
frp
15 引用 • 7 回帖 • 9 关注
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。
-
ActiveMQ
19 引用 • 13 回帖 • 628 关注
ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。
-
人工智能
75 引用 • 145 回帖
人工智能(Artificial Intelligence)是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门技术科学。
-
笔记
303 引用 • 777 回帖
好记性不如烂笔头。
-
Python
535 引用 • 672 回帖 • 2 关注
Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。
-
WebSocket
48 引用 • 206 回帖 • 398 关注
WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。
-
Lute
25 引用 • 191 回帖 • 19 关注
Lute 是一款结构化的 Markdown 引擎,支持 Go 和 JavaScript。
-
小说
28 引用 • 108 回帖 • 3 关注
小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。
-
持续集成
14 引用 • 7 回帖 • 1 关注
持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
-
分享
242 引用 • 1746 回帖 • 1 关注
有什么新发现就分享给大家吧!
-
面试
324 引用 • 1395 回帖 • 3 关注
面试造航母,上班拧螺丝。多面试,少加班。
-
星云链
3 引用 • 16 回帖 • 5 关注
星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于