Matcher类
检测是否匹配的三个方法:lookingAt
/find
/mat
regex = "hello"
表示的正则规则是以 hello 开头的字符串。
-
lookingAt
方法从头部开始,检查 content 字符串是否有子字符串与正则规则匹配。 -
find
方法检查 content 字符串是否有子字符串与正则规则匹配,不管字符串所在位置。 -
matches
方法检查 content 字符串整体是否与正则规则匹配。
分组构造
所谓分组构造,是用来描述正则表达式的子表达式,用于捕获字符串中的子字符串。
捕获与非捕获
表达式 | 描述 | 捕获或非捕获 |
---|---|---|
(exp) | 匹配的子表达式 | 捕获 |
(?<name>exp) | 命名的反向引用 | 捕获 |
(?:exp) | 非捕获组 | 非捕获 |
(?=exp) | 零宽度正预测先行断言 | 非捕获 |
(?!exp) | 零宽度负预测先行断言 | 非捕获 |
(?<=exp) | 零宽度正回顾后发断言 | 非捕获 |
(?<!exp) | 零宽度负回顾后发断言 | 非捕获 |
参考:
Java 正则从入门到精通