Java常用正则表达式大全

需积分: 0 1 下载量 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}) 表示匹配日期和时间。