黑马程序员技术交流社区
标题:
掌握正则表达式
[打印本页]
作者:
扬帆起航fonnson
时间:
2016-7-4 15:12
标题:
掌握正则表达式
正则表达式
String regex = "规则";
boolean bool = "xxx".matches(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-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")
. 任何字符
\d 数字:[0-9]
\D 非数字: [^0-9]
\s 空白字符:[ \t\n\x0B\f\r]
\S 非空白字符:[^\s]
\w 单词字符:[a-zA-Z_0-9]
\W 非单词字符:[^\w]
数量词
Greedy 数量词
X? X,一次或一次也没有
X* X,零次到多次
X+ X,一次或多次
X{n} X,恰好 n 次
X{n,} X,至少 n 次
X{n,m} X,至少 n 次,但是不超过 m 次
分割功能
String[] split(String regex):通过正则表达式切割字符串
替换功能
String replaceAll(String regex,String replacement):替换所有
分组功能
捕获组从左至右计算其左括号来编号。
String regex="(.)\\1(.)\\2"; "aabb"
正则表达式学起来挺简单的,要想熟练运用还需要多加练习才行。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2