public boolean matches(String regex){}
Java中的正则表达式指的是一个字符串模式,它用于匹配其他字符串的模式。它可以用于搜索、替换和验证字符串。
Java提供了java.util.regex包,它包含了一组类和接口,用于支持正则表达式操作。
一、字符类(只匹配一个字符)
- [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的交集。为: d,e, f
- [a-z&&[^bc]] a-z和非bc的交集。(等同于[ad-z])
- [a-z&&[^m-p]] a到z和除了m到p的交集。(等同于[a-l q-z])
二、预定义字符(只匹配一个字符)
- . 任何字符
- \d 一个数字:[0-9]
- \D 非数字:[^O-9]
- \s 一个空白字符:[ \t\n\x0B\f\r]
- \S 非空白字符:[^\s]
- \w [a-zA-Z_0-9]英文、数字、下划线
- \W [^\w]一个非单词字符
三、数量词
- X? x,一次或0次
- X* x,零次或多次
- X+ x,一次或多次
- x{n} x,正好n次
- x{n,} x,至少n次
- x{n,m} x,至少n但不超过m次
四、只写+和*表示贪婪匹配
- +? 非贪婪匹配
- *? 非贪婪匹配
- 贪婪爬取:在爬取数据的时候尽可能的多获取数据
- 非贪婪爬取:在爬收数嚣的时候尽可能的少获取数据