Java正则表达式基础语法详解
正则表达式是一种用于检擦、匹配字符串的模式描述工具,在Java中广泛用于字符串校验、查找与替换场景。本文梳理了正则表达式的基础语法,包括字符范围、元字符、量词及定位符,帮助开发者快速掌握核心匹配规则。
什么是正则表达式?
正则表达式是描述规则的表达式,主流编程语言均提供了良好的支持。其核心应用场景包括:
- 检擦与匹配:判断字符串是否符合特定格式。
- 查找与替换:在文本中定位目标子串并进行处理。
基础语法详解
第1步:理解字符范围匹配
字符集是正则中最基础的单元,用于定义允许出现的单个或多个字符。以下是常见字符范围匹配的对照表:
| 正则表达式 | 说明 | 正确示例 | 错误示例 |
|---|---|---|---|
| A | 精准匹配单个字符“A” | A |
a |
| x/y | 允许出现“x”或“y” | y |
n |
| [xyz] | 字符集合,允许集合内任意单个字符 | z |
c |
| [a-z] [A-Z] [0-9] | 字符范围:小写、大写或数字 | a D 8 |
A a A (注意大小写区分) |
| [^xyz] [^0-9] | 取反:集合外或数字外的字符 | 0 A |
y 8 |
第2步:掌握常用元字符
元字符是指具有特殊含义、代表某一类字符的规则符号。在Java中使用时,部分元字符可能需要双重转义(如\\d),以下列表展示其标准语意:
| 正则表达式 | 说明 | 正确示例 | 错误示例 |
|---|---|---|---|
| \\d | 匹配任意单个数字 (0-9) | 8 |
i |
| \\D | 匹配非数字字符 | i |
8 |
| \\w | 匹配单词字符(字母、数字、下划线) | Y |
& |
| \\W | 匹配非单词字符 | & |
Y |
| \\s | 匹配空白字符(空格、制表符等) | (空格) |
x |
| \\n | 匹配换行符 | (换行) |
x |
| . | 匹配除换行符以外的任意单个字符 | - |
\\r\\n |
| \\. | 仅匹配字面量点号“.” | . |
1 |
第3步:配置重复次数量词
量词用于指定前面元素出现的次数。合理使用量词可以精确控制匹配长度:
| 正则表达式 | 说明 | 正确示例 | 错误示例 |
|---|---|---|---|
| A{3} | 精准匹配3次 | AAA |
AA |
| A{3,} | 至少出现3次 | AAA |
AA |
| \\d{3,5} | 数字出现3到5次 | 1234 |
12 |
| \\d* | 零次至无限次(等价于{0,}) | 1234 |
– (空字符串也匹配) |
| \\d+ | 一次至无限次(等价于{1,}) | 12 |
(空字符串不匹配) |
| \\d? | 零次或一次(等价于{0,1}) | 1 |
12 |
第4步:应用定位匹配
定位符(断言)不匹配具体字符,而是匹配位置,常用于确保字符串开头或结尾符合特定规则:
| 正则表达式 | 说明 | 正确示例 | 错误示例 |
|---|---|---|---|
| ^A.* | 头匹配:以“A”开头的字符串 | ABC |
CBA |
| .*A$ | 尾匹配:以“A”结尾的字符串 | CBA |
ABC |
| ^A.*A$ | 全字匹配:以“A”开头且以“A”结尾 | ACCCA |
ACCCB |
总结
以上便是Java正则表达式基础语法的详细内容,更多关于Java正则表达式实战技巧的资料请关注本站其它相关文章!
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













