JAVA常用正则表达式完全指南

需积分: 10 2 下载量 197 浏览量 更新于2024-09-16 收藏 162KB PDF 举报
"正则表达式" 正则表达式是一种强大的文本处理工具,它用于匹配、查找、替换或提取文本中的特定模式。在Java中,正则表达式被广泛用于字符串处理,例如验证用户输入、搜索文本、提取数据等。这份PDF资料提供了常见正则表达式的模式,涵盖各种类型的数字、字母、特殊字符以及电子邮件地址和URL的匹配。 1. 数字匹配: - `^\d+$` 匹配非负整数(包括0和正整数)。 - `^[0-9]*[1-9][0-9]*$` 匹配正整数。 - `^((-\d+)?(0+))$` 匹配非正整数(包括负整数和0)。 - `^-?[0-9]*[1-9][0-9]*$` 匹配负整数。 - `^-?\d+$` 匹配整数(包括正负整数和0)。 - `^\d+(\.\d+)?$` 匹配非负浮点数(包括0和正浮点数)。 2. 浮点数匹配: - `^(([0-9]+\.[0-9]*[1-9][0-9]*)?([0-9]*[1-9][0-9]*\.[0-9]+)?([0-9]*[1-9][0-9]*))$` 匹配正浮点数。 - `^((-\d+(\.\d+)?)?(0+(\.0+)?))$` 匹配非正浮点数(包括负浮点数和0)。 - `^(-(([0-9]+\.[0-9]*[1-9][0-9]*)?([0-9]*[1-9][0-9]*\.[0-9]+)?([0-9]*[1-9][0-9]*)))$` 匹配负浮点数。 - `^(-?\d+)(\.\d+)?$` 匹配浮点数(包括正负浮点数和0)。 3. 字符串匹配: - `^[A-Za-z]+$` 匹配由26个英文字母组成的字符串。 - `^[A-Z]+$` 匹配由26个大写字母组成的字符串。 - `^[a-z]+$` 匹配由26个小写字母组成的字符串。 - `^[A-Za-z0-9]+$` 匹配由数字和26个英文字母组成的字符串。 - `^\w+$` 匹配由数字、26个英文字母或下划线组成的字符串。 4. 特殊应用: - `^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$` 匹配电子邮件地址的标准格式。 - `^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$` 匹配URL。 - `[\u4e00-\u9fa5]` 匹配中文字符的范围。 - `[^\x00-\xff]` 匹配双字节字符,如汉字。 - 使用正则表达式计算字符串长度,例如`String.prototype.len = function() { return this.replace(/[^\x00-\xff]/g, "aa").length; }`,将双字节字符计为2,ASCII字符计为1。 - `\n[\s?]*\r` 匹配空行。 这些正则表达式可以作为开发者的参考,帮助他们在处理字符串时快速有效地进行验证和匹配。通过理解并熟练运用这些模式,开发者能够更高效地处理各种字符串操作,提高代码的健壮性和准确性。