全面解析:正则表达式关键符号与用法

需积分: 25 0 下载量 103 浏览量 更新于2024-09-07 收藏 7KB TXT 举报
"正则表达式速查表" 正则表达式是一种强大的文本处理工具,用于在字符串中匹配、查找、替换或提取特定模式。它由各种字符和元字符组成,能够灵活地定义搜索模式。以下是一些重要的正则表达式知识点: 1. **转义字符**: - `\` 用于转义特殊字符,如`\d`表示数字,`\s`表示空白字符。 - `\\` 表示一个反斜杠。 - `\0` 到 `\077` 表示八进制字符,`\0nn` 和 `\0mnn` 分别表示八进制数字。 - `\xhh` 表示十六进制字符,`\uhhhh` 同样表示十六进制。 - 特殊字符:`\t` (制表符), `\n` (换行), `\r` (回车), `\f` (换页), `\a` (响铃), `\e` (转义)。 2. **字符类**: - `[abc]` 匹配 'a', 'b', 或 'c'。 - `[^abc]` 匹配除 'a', 'b', 'c' 之外的任何字符。 - `[a-zA-Z]` 匹配大小写字母。 - `[a-d[m-p]]` 匹配 'admp' 或 '[ad-m]'。 - `[a-z&&[def]]` 只匹配 'def'。 - `[a-z&&[^bc]]` 匹配 'az' 但排除 'b' 和 'c'。 - `[a-z&&[^m-p]]` 匹配 'azmp' 但排除 'm' 到 'p'。 3. **量词**: - `.` 代表任意字符,除了换行符。 - `*` 表示前面的字符可以出现零次或多次。 - `+` 表示前面的字符至少出现一次。 - `?` 表示前面的字符可以出现零次或一次。 - `{n}` 指定前面的字符出现 n 次。 - `{n,m}` 指定前面的字符至少出现 n 次,最多 m 次。 - `{n,}` 表示前面的字符至少出现 n 次,没有上限。 4. **预定义字符类**: - `\d` 相当于 `[0-9]`,匹配数字。 - `\D` 相当于 `[^0-9]`,匹配非数字。 - `\s` 匹配空白字符,包括 tab, newline, carriage return, form feed。 - `\S` 匹配非空白字符。 - `\w` 匹配字母、数字或下划线,等价于 `[a-zA-Z0-9_]`。 - `\W` 匹配非单词字符,等价于 `[^a-zA-Z0-9_]`。 5. **Unicode 属性**: - `\p{Lower}` 匹配小写字母。 - `\p{Upper}` 匹配大写字母。 - `\p{ASCII}` 匹配 ASCII 字符集。 - `\p{Alpha}` 匹配任何字母。 - `\p{Digit}` 匹配任何数字。 - `\p{Alnum}` 匹配任何字母或数字。 - 更多属性,如 `\p{Punct}`, `\p{Graph}`, `\p{Print}`, `\p{Blank}`, `\p{Cntrl}`, `\p{XDigit}`, `\p{Space}`,分别对应标点符号、可打印字符、空白字符等。 6. **Java 语言相关的属性**: - `\p{javaLowerCase}` 根据 Java 的 `Character.isLowerCase()` 判断。 - `\p{javaUpperCase}` 根据 Java 的 `Character.isUpperCase()` 判断。 - `\p{javaWhitespace}` 匹配 Java 规范中的空白字符。 掌握这些基本的正则表达式知识点,可以帮助你在处理文本时进行高效、精确的匹配和操作。无论是在编程、数据分析还是文本处理中,正则表达式都是不可或缺的工具。通过不断地练习和应用,你将能够更加熟练地运用它们来解决实际问题。