深入解析 Java 正则表达式中的元字符

Regex 是 Regular Expression(正则表达式)的缩写,它用于定义字符串的模式。我们主要利用它来查找文本或编辑文本。Java 的正则表达式类位于 java.util.regex 包中,在使用这些类的方法之前,我们需要先将其导入。

java.util.regex 包主要包含以下 3 个类:

  • Pattern(模式类)
  • Matcher(匹配器类)
  • PatternSyntaxException(模式语法异常类)

!Regex in Javaregex 包中的类

元字符就像是常见匹配模式的“快捷代码”。

正则表达式

描述

\d

任何数字,相当于 [0-9] 的简写

\D

任何非数字字符,相当于 [^0-9] 的简写

\s

任何空白字符,相当于 [\t

\x0B\f\r] 的简写 |

\S

任何非空白字符

\w

任何单词字符,相当于 [a-zA-Z_0-9] 的简写

\W

任何非单词字符

\b

代表单词边界

\B

代表非单词边界### 元字符的使用

  • 在元字符前面加上反斜杠 (\) 即可使用。

元字符详解

#### 1. 数字与非数字相关元字符:\d, \D

Java


CODEBLOCK_4520d000

输出结果

true
false
true
false

解释

  • d 元字符代表 0 到 9 之间的数字。因此,当我们将其与范围内的“d”进行比较时,它会返回 true。否则返回 false。
  • D 元字符代表非数字,它接受除数字以外的任何字符。因此,当我们用 任何数字 来比较“D”时,它会 返回 false。否则返回 true。

#### 2. 空白与非空白元字符:\s, \S

Java


CODEBLOCK_a9eb3019

输出结果

true
false
true
false

解释

  • s 代表空白字符,如空格、制表符、换行符等。因此,当我们用 空白字符 比较“s”时,它返回 true。否则返回 false。
  • S 代表非空白字符,它接受除空白字符以外的所有内容。因此,当我们用 空白字符 比较“S”时,它返回 false。否则返回 true。

#### 3. 单词与非单词元字符:\w, \W

Java


CODEBLOCK_3bc304c9

输出结果

true
true
false
false
true
true

解释

  • w 代表单词字符,它接受字母(大写和小写)和数字 [0-9]。因此,当我们用字母或数字比较“w”时,返回 true。否则返回 false。
  • W 代表非单词字符,它接受除字母和数字以外的任何字符。因此,当我们用字母或数字比较“W”时,返回 false。否则返回 true。

#### 4. 单词与非单词边界元字符:\b, \B

Java


CODEBLOCK_0fec4b2a

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/24962.html
点赞
0.00 平均评分 (0% 分数) - 0