正则表达式(☆☆☆)
正则表达式:就是符合一定规则的字符串,就是个字符串 只不过符合了某种规则
字符类(☆☆☆)
[abc] a、b 或 c(简单类)
[^abc] 任何字符,除了 a、b 或 c(否定)
[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内(范围)
[a-d[m-p]] a 到 d 或 m 到 p:[a-dm-p](并集)
[a-z&&[def]] d、e 或 f(交集)
[a-z&&[^bc]] a 到 z,除了 b 和 c:[ad-z](减去)
[a-z&&[^m-p]] a 到 z,而非 m 到 p:[a-lq-z](减去)
预定义字符(☆☆☆)
. 任何字符
\d 数字:[0-9] digit
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r] space
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9] word
\W 非单词字符:[^\w]
数量词(☆☆☆)
X? X,一次或一次也没有
X* X,零次或多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过 m 次
组(☆):
捕获组可以通过从左到右计算其开括号来编号。例如,在表达式 ((A)(B(C))) 中,存在四个这样的组:
1 ((A)(B(C)))
2 (A)
3 (B(C))
4 (C)
\\1 获取第一组
$1 获取第一组里面匹配到的内容
String利用正则表达式完成匹配功能(
public boolean matches(String regex):告知此字符串是否匹配给定的正则表达式
String利用正则表达式完成切割功能
public String[] split(String regex); 按照正则表达式所匹配的字符将字符串切割成字符串数组
String利用正则表达式完成替换功能
//replace(String str,String str1);
String类的功能:public String replaceAll(String regex,String replacement)
注意和我们以前学过的String类里面的一个public String replace(String str,String str1);区分 |