正则表达式:数据格式验证大全
需积分: 10 28 浏览量
更新于2024-09-11
收藏 15KB TXT 举报
"正则表达式用于验证各种输入格式,如实数、整数、时间、年份、月份、手机号码、邮箱等。"
正则表达式是编程中用于匹配字符串的强大工具,常用于数据验证,确保用户输入符合特定格式。以下是一些常见的正则表达式模式及其用途:
1. 邮箱验证:
`'\\w+([-+.']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*'`
这个正则表达式用于检查输入是否符合基本的电子邮件地址格式,包括用户名、@符号、域名和顶级域名。
2. URL验证:
`URL:http(s)?://(\\w-+.)+\\w-+(/\\w-./?%&=*)?`
这个正则表达式用于验证URL是否有效,涵盖了http和https协议,以及域名和可选的路径、查询参数等。
3. 手机号码验证:
`绰\(0\d{2,3}\)[-]?\d{7,8}|0\d{2,3}[-]?\d{7,8}|1\d{10}|\d{7,8}`
这个正则表达式涵盖了多种格式的中国手机号码,包括区号加号码、无区号的11位号码以及简单的7或8位号码。
4. 电话号码验证:
`(\d{3}-|\d{4}-)?(\d{8}|\d{7})?`
此正则表达式用于验证电话号码,可以处理有或没有区号,以及7位或8位的本地号码。
5. 中国身份证号(15位或18位)验证:
`^\d{18}|\d{17}x|\d{15}$`
用于检查输入的身份证号码是否合法,包含18位身份证号、17位带校验X的身份证号以及15位身份证号。
6. IP地址验证:
`IP((2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?)\.(2[0-4]\d|25[0-5]|[01]?\d\d?))`
这个正则表达式用于验证IPv4地址,确保每个部分的数值在0到255之间。
7. 实数验证:
`ʵ[-]?\d+.\d*(E\-[1-9]+)?|^[-]?\d+.\d*(E\+[1-9]+){0,1}$`
用于确认输入的数字是一个有效的实数,支持科学计数法。
8. 整数验证:
`ʵѧ㷨^[-]?(\d+.\d+)|\d+$`
这个正则表达式用于验证输入是否为一个整数,包括正负整数和零。
9. 年份和月份验证:
日期验证的正则表达式较为复杂,通常需要根据具体格式进行编写。例如,`^((\d{2}(([02468][048])|([13579][26]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-2])))))|(\d{2}(([02468][1235679])|([13579][01345789]))[\-\/\s]?((((0?[13578])|(1[02]))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(3[01])))|(((0?[469])|(11))[\-\/\s]?((0?[1-9])|([1-2][0-9])|(30)))|(0?2[\-\/\s]?((0?[1-9])|(1[0-9])|(2[0-8]))))))(\s(((0?[1-9])|(1[0-2]))\:([0-5][0-9])((\s)|(\:([0-5][0-9])\s))([AM|PM|am|pm]{2,2})))?$`
可以匹配闰年和平年的日期,并且包含了时间的验证。
10. QQ号码验证:
`QQ룺^\d{5,14}$`
这个正则表达式用于确认输入的QQ号码是否为5至14位的数字。
这些正则表达式只是正则表达式世界中的一小部分,实际上,你可以用它们来验证几乎任何类型的数据格式,只需根据需要调整模式即可。在实际开发中,根据具体的应用场景,可能还需要对这些正则表达式进行更复杂的调整和优化。
2022-08-08 上传
2014-08-04 上传
2010-07-27 上传
2010-12-20 上传
2023-10-12 上传
2024-11-06 上传
2024-11-06 上传
cn_boy
- 粉丝: 0
- 资源: 1
最新资源
- Android圆角进度条控件的设计与应用
- mui框架实现带侧边栏的响应式布局
- Android仿知乎横线直线进度条实现教程
- SSM选课系统实现:Spring+SpringMVC+MyBatis源码剖析
- 使用JavaScript开发的流星待办事项应用
- Google Code Jam 2015竞赛回顾与Java编程实践
- Angular 2与NW.js集成:通过Webpack和Gulp构建环境详解
- OneDayTripPlanner:数字化城市旅游活动规划助手
- TinySTM 轻量级原子操作库的详细介绍与安装指南
- 模拟PHP序列化:JavaScript实现序列化与反序列化技术
- ***进销存系统全面功能介绍与开发指南
- 掌握Clojure命名空间的正确重新加载技巧
- 免费获取VMD模态分解Matlab源代码与案例数据
- BuglyEasyToUnity最新更新优化:简化Unity开发者接入流程
- Android学生俱乐部项目任务2解析与实践
- 掌握Elixir语言构建高效分布式网络爬虫