正则表达式常用语法速查表

1 下载量 112 浏览量 更新于2024-08-31 收藏 80KB PDF 举报
"正则表达式速查表包含各种特殊字符、字符类和预定义类的用法,用于快速查询和使用" 正则表达式是一种强大的文本处理工具,广泛应用于数据验证、搜索替换以及字符串处理等多个领域。在编程语言中,正则表达式通常用于模式匹配,帮助我们找到符合特定规则的文本片段。以下是一些核心概念和常用语法的详解: 1. **特殊字符**: - `x`: 代表字符x本身。 - `\`: 反斜线,用来转义特殊字符,如`\t`表示制表符,`\n`表示新行,`\r`表示回车。 - `\0n`, `\0nn`, `\0mnn`: 八进制转义,分别表示八进制值0的字符、0-7的八进制值字符和3位八进制值字符。 - `\xhh`, `\uhhhh`: 十六进制转义,分别表示16进制值hh的字符和16进制值hhhh的字符。 2. **字符类**: - `[abc]`: 简单类,匹配a、b或c中的任一字符。 - `[^abc]`: 否定类,匹配除a、b、c之外的任何字符。 - `[a-zA-Z]`: 范围类,匹配a到z或A到Z的字符。 - `[a-d[m-p]]`: 并集类,匹配a到d或m到p的字符。 - `[a-z&&[def]]`: 交集类,匹配同时属于a-z和def的字符。 - `[a-z&&[^bc]]`: 减去类,匹配a-z但排除b和c的字符。 - `[a-z&&[^m-p]]`: 减去类,匹配a-z但排除m到p的字符。 3. **预定义字符类**: - `.`: 任意字符,通常不匹配换行符。 - `\d`: 数字字符,等同于`[0-9]`。 - `\D`: 非数字字符,等同于`[^0-9]`。 - `\s`: 空白字符,包括`\t\n\x0B\f\r`。 - `\S`: 非空白字符,等同于`[^\s]`。 - `\w`: 单词字符,包括字母、数字和下划线,等同于`[a-zA-Z_0-9]`。 - `\W`: 非单词字符,等同于`[^\w]`。 4. **POSIX字符类**(仅限US-ASCII): - `\p{Lower}`: 小写字母,等同于`[a-z]`。 - `\p{Upper}`: 大写字母,等同于`[A-Z]`。 - `\p{ASCII}`: 所有ASCII字符,等同于`[\x00-\x7F]`。 - `\p{Alpha}`: 字母字符,等同于`\p{Lower}\p{Upper}`。 - `\p{Digit}`: 十进制数字,等同于`[0-9]`。 - `\p{Alnum}`: 字母数字字符,等同于`\p{Alpha}\p{Digit}`。 - `\p{Punct}`: 标点符号,包括常见的标点符号。 - `\p{Graph}`: 可见字符,包括字母数字和标点符号。 - `\p{Print}`: 可打印字符,包括`\p{Graph}`和一些特定的打印字符。 掌握这些基本的正则表达式元素后,你可以组合它们来创建更复杂的模式,以满足各种匹配需求。例如,`\d{3}-\d{4}`可以匹配美国电话号码格式,而`^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$`则可以验证电子邮件地址的格式。通过熟练运用正则表达式,你可以更高效地处理和分析文本数据。