正则表达式模式大全:数字、字母、邮箱与日期验证
需积分: 10 118 浏览量
更新于2024-08-01
收藏 58KB DOC 举报
"这个资源是一个关于常用正则表达式的集合,涵盖了多种常见字符串格式的匹配规则,包括数字、字母、下划线组合的字符串,各种类型的整数和浮点数,以及特定格式的邮箱、URL和日期的验证正则表达式。"
在编程和数据处理中,正则表达式(Regular Expression,简称regex)是一种强大的文本处理工具,用于匹配、查找、替换等操作。以下是上述资源中提到的一些常见正则表达式及其用途:
1. **由数字、26个英文字母或下划线组成的字符串**:`^[0-9a-zA-Z_]{1,}$`,这个正则表达式用于匹配任何由数字、大写字母、小写字母或下划线组成的字符串,至少包含一个字符。
2. **非负整数(正整数+0)**:`^\d+$`,匹配所有非负整数,即0和所有正整数。
3. **正整数**:`^[0-9]*[1-9][0-9]*$`,确保至少有一个非零数字开头,排除了0。
4. **非正整数(负整数+0)**:`^((-\d+)|(0+))$`,匹配负整数(前面带负号)和0。
5. **负整数**:`^-[0-9]*[1-9][0-9]*$`,确保负数后面至少有一个非零数字。
6. **整数**:`^-?\d+$`,匹配所有整数,包括正、负和0。
7. **非负浮点数(正浮点数+0)**:`^\d+(\.\d+)?$`,匹配所有非负浮点数,包括0和正浮点数。
8. **正浮点数**:`^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$`,确保至少有一个非零数字在小数点后。
9. **非正浮点数(负浮点数+0)**:`^((-\d+(\.\d+)?)|(0+(\.0+)?))$`,匹配负浮点数和0。
10. **负浮点数**:`^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$`,确保负数后面至少有一个非零数字。
11. **浮点数**:`^(-?\d+)(\.\d+)?$`,匹配所有浮点数,包括正、负和0。
12. **由26个英文字母组成的字符串**:`^[A-Za-z]+$`,只允许包含大小写字母的字符串。
13. **由26个英文字母的大写组成的字符串**:`^[A-Z]+$`,仅限大写字母。
14. **由26个英文字母的小写组成的字符串**:`^[a-z]+$`,仅限小写字母。
15. **由数字和26个英文字母组成的字符串**:`^[A-Za-z0-9]+$`,允许数字和字母混合。
16. **由数字、26个英文字母或下划线组成的字符串**:`^\w+$`,与第15条类似,但这里使用了元字符`\w`,它等同于`[a-zA-Z0-9_]`。
17. **电子邮件地址**:`^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$`,用于验证电子邮件格式。
18. **URL**:`^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$`,匹配基本的URL结构。
19. **年-月-日**:`/^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/`,用于验证日期格式,如1990-01-01或2022-12-31。
20. **月/日/年**:`/^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/`,另一种日期格式,如01/31/2022或12/31/99。
21. **Email**:`^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]$`,这是另一种电子邮件地址的验证规则,与第17条略有不同。
这些正则表达式是开发人员日常工作中常用的工具,可以帮助进行数据验证、搜索和替换等任务,确保输入的数据符合预期的格式。学习和掌握这些正则表达式模式对于提升编程效率和代码质量非常有帮助。
2010-07-01 上传
2017-10-18 上传
2011-04-26 上传
2011-03-10 上传
2011-03-30 上传
2024-11-29 上传
2024-11-29 上传
2024-11-29 上传
zhwlsoft
- 粉丝: 0
- 资源: 14
最新资源
- C语言数组操作:高度检查器编程实践
- 基于Swift开发的嘉定单车LBS iOS应用项目解析
- 钗头凤声乐表演的二度创作分析报告
- 分布式数据库特训营全套教程资料
- JavaScript开发者Robert Bindar的博客平台
- MATLAB投影寻踪代码教程及文件解压缩指南
- HTML5拖放实现的RPSLS游戏教程
- HT://Dig引擎接口,Ampoliros开源模块应用
- 全面探测服务器性能与PHP环境的iprober PHP探针v0.024
- 新版提醒应用v2:基于MongoDB的数据存储
- 《我的世界》东方大陆1.12.2材质包深度体验
- Hypercore Promisifier: JavaScript中的回调转换为Promise包装器
- 探索开源项目Artifice:Slyme脚本与技巧游戏
- Matlab机器人学习代码解析与笔记分享
- 查尔默斯大学计算物理作业HP2解析
- GitHub问题管理新工具:GIRA-crx插件介绍