Java正则表达式实用示例集锦
5星 · 超过95%的资源 需积分: 10 194 浏览量
更新于2024-09-13
收藏 41KB DOC 举报
"这个资源主要提供了多个Java正则表达式的实用例子,涵盖了各种常见的文本输入验证场景,包括数字、字符、特殊字符、邮箱、URL、电话号码、身份证号等的格式检查。"
Java正则表达式是用于在Java编程语言中进行文本匹配和操作的强大工具。它们基于模式匹配的概念,可以用来验证用户输入、提取数据或者执行复杂的文本搜索和替换操作。以下是一些在描述中给出的例子及其详细解释:
1. **整数或小数**:`^[0-9]+\.{0,1}[0-9]{0,2}$` - 这个正则表达式用于匹配一个整数或最多带有两位小数的浮点数。例如:123, 123.4, 123.45。
2. **只能输入数字**:`^[0-9]*$` - 这个表达式允许输入任意数量的数字,但不允许其他任何字符。
3. **固定位数的数字**:`^\d{n}$` - 这个模式匹配恰好有n位的数字,例如`^\d{3}$`将只匹配3位数字的字符串。
4. **至少n位的数字**:`^\d{n,}$` - 至少需要n位,可以更多,例如`^\d{3,}$`会匹配3位或更多的数字。
5. **m到n位的数字**:`^\d{m,n}$` - 匹配m到n位之间的数字,例如`^\d{2,4}$`匹配2到4位的数字。
6. **零或非零开头的数字**:`^(0|[1-9][0-9]*)$` - 允许输入0或任何非零数字开头的序列。
7. **有两位小数的正实数**:`^[0-9]+(.[0-9]{2})?$` - 匹配至少一位整数,可选的小数点后跟两位小数的正实数。
8. **有1到3位小数的正实数**:`^[0-9]+(.[0-9]{1,3})?$` - 同上,但小数部分可以有1到3位。
9. **非零的正整数**:`^\+?[1-9][0-9]*$` - 匹配所有非零的正整数,可以包含正号。
10. **非零的负整数**:`^\-[1-9][0-9]*$` - 匹配所有非零的负整数,不包括前导零。
11. **长度为3的字符**:`^.{3}$` - 匹配任何长度为3的字符串。
12. **26个英文字母组成的字符串**:`^[A-Za-z]+$` - 只允许26个英文字母的组合。
13. **26个大写英文字母组成的字符串**:`^[A-Z]+$` - 只允许26个大写字母的组合。
14. **26个小写英文字母组成的字符串**:`^[a-z]+$` - 只允许26个小写字母的组合。
15. **数字和26个英文字母组成的字符串**:`^[A-Za-z0-9]+$` - 允许数字和字母的组合。
16. **数字、字母或下划线组成的字符串**:`^\w+$` - 也称为单词字符,包括字母、数字和下划线。
17. **用户密码验证**:`^[a-zA-Z]\w{5,17}$` - 验证以字母开头,长度在6到18位,且只包含字母、数字和下划线的密码。
18. **禁止特定字符**:`[^%&',;=?$\x22]+` - 验证字符串中不包含^%&',;=?$\"等特殊字符。
19. **汉字**:`^[\u4e00-\u9fa5]{0,}$` - 匹配所有中文字符。
20. **邮箱地址验证**:`^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$` - 验证符合电子邮件格式的字符串。
21. **URL验证**:`^http://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?$` - 检查是否为有效的HTTP URL。
22. **电话号码验证**:`^(\(\d{3,4}-)|\d{3,4}-)?\d{7,8}$` - 验证多种格式的电话号码,如XXX-XXXXXXXX、XXXX-XXXXXXXX、XXX-XXXXXXX、XXXX-XXXXXX、XXXXXXXX。
23. **15位或18位身份证号**:`^\d{15}|\d{18}$` - 验证15位或18位的中国居民身份证号码。
24. **12个月份**:`^(0?[1-9]|1[0-2])` - 匹配1到12的月份,通常用于日期格式验证。
这些例子展示了Java正则表达式的灵活性和广泛的应用范围。通过熟练掌握正则表达式,开发者可以更有效地处理和验证各种类型的用户输入,提高程序的安全性和用户体验。
2017-01-18 上传
2008-09-02 上传
2009-02-25 上传
2019-03-30 上传
2009-09-03 上传
2021-12-04 上传
2011-04-02 上传
2024-01-03 上传
2024-06-17 上传
浪里花
- 粉丝: 30
- 资源: 6
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析