Java常用正则表达式大全
需积分: 0 196 浏览量
更新于2024-09-16
收藏 36KB DOC 举报
Java 正则表达式收集
Java 正则表达式是一种强大的字符串匹配工具,它可以用来匹配、验证和提取字符串中特定的模式。在 Java 中,正则表达式通常用来验证用户输入、提取字符串中的特定信息、匹配字符串中的模式等。
1. 非负整数(正整数+0)
"^\\d+$"
这个正则表达式用来匹配非负整数,即正整数和 0。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。\\d+ 表示匹配一个或多个数字字符。
2. 正整数
"^([0-9]*[1-9][0-9]*)$"
这个正则表达式用来匹配正整数。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[0-9]* 表示匹配零个或多个数字字符,[1-9] 表示匹配一个数字字符,但不能是 0,[0-9]* 表示匹配零个或多个数字字符。
3. 非正整数(负整数+0)
"^((-\\d+)|(0+))$"
这个正则表达式用来匹配非正整数,即负整数和 0。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。(-\\d+)|(0+) 表示匹配负整数或 0。
4. 负整数
"^-?[0-9]*[1-9][0-9]*$"
这个正则表达式用来匹配负整数。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。-? 表示匹配可选的负号,[0-9]* 表示匹配零个或多个数字字符,[1-9] 表示匹配一个数字字符,但不能是 0,[0-9]* 表示匹配零个或多个数字字符。
5. 整数
"^-?\\d+$"
这个正则表达式用来匹配整数,即正整数、负整数和 0。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。-? 表示匹配可选的负号,\\d+ 表示匹配一个或多个数字字符。
6. 非负浮点数(正浮点数+0)
"^\\d+(\\.\\d+)?$"
这个正则表达式用来匹配非负浮点数,即正浮点数和 0。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。\\d+ 表示匹配一个或多个数字字符,(\\.\\d+)? 表示匹配可选的小数部分。
7. 正浮点数
"^(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))$"
这个正则表达式用来匹配正浮点数。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*) 表示匹配正浮点数。
8. 非正浮点数(负浮点数+0)
"^((-\\d+(\\.\\d+)?)|(0+(\\.0+)?))$"
这个正则表达式用来匹配非正浮点数,即负浮点数和 0。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。(-\\d+(\\.\\d+)?)|(0+(\\.0+)?) 表示匹配负浮点数或 0。
9. 负浮点数
"^(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"
这个正则表达式用来匹配负浮点数。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。(-(([0-9]+\\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\\.[0-9]+)|([0-9]*[1-9][0-9]*))) 表示匹配负浮点数。
10. 浮点数
"^(-?\\d+)(\\.\\d+)?$"
这个正则表达式用来匹配浮点数,即正浮点数、负浮点数和 0。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。-? 表示匹配可选的负号,\\d+ 表示匹配一个或多个数字字符,(\\.\\d+)? 表示匹配可选的小数部分。
11. 由 26 个英文字母组成的字符串
"^[A-Za-z]+$"
这个正则表达式用来匹配由 26 个英文字母组成的字符串。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[A-Za-z]+ 表示匹配一个或多个英文字母。
12. 由 26 个英文字母的大写组成的字符串
"^[A-Z]+$"
这个正则表达式用来匹配由 26 个英文字母的大写组成的字符串。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[A-Z]+ 表示匹配一个或多个大写英文字母。
13. 由 26 个英文字母的小写组成的字符串
"^[a-z]+$"
这个正则表达式用来匹配由 26 个英文字母的小写组成的字符串。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[a-z]+ 表示匹配一个或多个小写英文字母。
14. 由数字和 26 个英文字母组成的字符串
"^[A-Za-z0-9]+$"
这个正则表达式用来匹配由数字和 26 个英文字母组成的字符串。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[A-Za-z0-9]+ 表示匹配一个或多个数字或英文字母。
15. 由数字、26 个英文字母或者下划线组成的字符串
"^\\w+$"
这个正则表达式用来匹配由数字、26 个英文字母或者下划线组成的字符串。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。\\w+ 表示匹配一个或多个数字、英文字母或者下划线。
16. email 地址
"^[\\w-]+(\\.[\\w-]+)*@[\\w-]+(\\.[\\w-]+)+$"
这个正则表达式用来匹配 email 地址。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[\\w-]+(\\.[\\w-]+)* 表示匹配域名前缀,@[\\w-]+(\\.[\\w-]+)+ 表示匹配域名和域名后缀。
17. url
"^[a-zA-z]+://(\\w+(-\\w+)*)*(\\.(\\w+(-\\w+)*))*(\\?(\\S*)?$"
这个正则表达式用来匹配 url。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。[a-zA-z]+:// 表示匹配协议,(\\w+(-\\w+)*)* 表示匹配域名前缀,(\.(\\w+(-\\w+)*))* 表示匹配域名和域名后缀,(\\?(\\S*)? 表示匹配查询字符串。
18. 年-月-日
"^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$"
这个正则表达式用来匹配年-月-日日期格式。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。(d{2}|d{4}) 表示匹配年份,-((0([1-9]{1}))|(1[1|2])) 表示匹配月份,-(([0-2]([1-9]{1}))|(3[0|1])) 表示匹配日。
19. 月/日/年
"^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$"
这个正则表达式用来匹配月/日/年日期格式。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。((0([1-9]{1}))|(1[1|2])) 表示匹配月份,/(([0-2]([1-9]{1}))|(3[0|1])) 表示匹配日份,/(d{2}|d{4}) 表示匹配年份。
20. Email
"^([\\w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3})|(([\\w-]+)\\.))+([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$"
这个正则表达式用来匹配 Email 地址。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。([\\w-.]+) 表示匹配用户名,@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3})|(([\\w-]+)\\.))+ 表示匹配域名和域名后缀,([a-zA-Z]{2,4}|[0-9]{1,3})(]?) 表示匹配域名后缀。
21. 日期和时间
"(d+-)?(d{4}-?d{7}|d{3}-?d{8}|^d{7,8})"
这个正则表达式用来匹配日期和时间格式。它通过 ^ 和 $ 限定符来确保匹配整个字符串,而不是字符串的一部分。(d+-)? 表示匹配可选的日期前缀,(d{4}-?d{7}|d{3}-?d{8}|^d{7,8}) 表示匹配日期和时间。
2011-01-21 上传
2023-05-19 上传
2024-05-15 上传
2023-05-31 上传
2023-05-24 上传
2023-09-18 上传
2024-04-30 上传
jizongwei_19840111
- 粉丝: 1
- 资源: 35
最新资源
- WebLogic集群配置与管理实战指南
- AIX5.3上安装Weblogic 9.2详细步骤
- 面向对象编程模拟试题详解与解析
- Flex+FMS2.0中文教程:开发流媒体应用的实践指南
- PID调节深入解析:从入门到精通
- 数字水印技术:保护版权的新防线
- 8位数码管显示24小时制数字电子钟程序设计
- Mhdd免费版详细使用教程:硬盘检测与坏道屏蔽
- 操作系统期末复习指南:进程、线程与系统调用详解
- Cognos8性能优化指南:软件参数与报表设计调优
- Cognos8开发入门:从Transformer到ReportStudio
- Cisco 6509交换机配置全面指南
- C#入门:XML基础教程与实例解析
- Matlab振动分析详解:从单自由度到6自由度模型
- Eclipse JDT中的ASTParser详解与核心类介绍
- Java程序员必备资源网站大全