黑马程序员-正则表达式

来源:互联网 发布:mysql 快照备份 编辑:程序博客网 时间:2024/05/18 04:17
---------------------- ASP.Net+Android+IO开发S、.Net培训、期待与您交流! ----------------------
 
1:正则表达式
(1)正则表达式:就是符合一定规则的字符串
(2)规则字符
A:字符
x 字符x
\\ 反斜线字符 
\r 回车符
\n 换行符
\t 制表符,一个tab键的位置
B:字符类
[abc] a、b 或 c
[^abc] 任何字符,除了 a、b 或 c 
[a-zA-Z] a 到 z 或 A 到 Z,两头的字母包括在内 
[0-9] 表示0到9的任意字符
C:预定义字符类
. 任何字符 
\d 数字:[0-9] 
\D 非数字 
\w 单词字符:[a-zA-Z_0-9] 
只认为0-9,_,字母才是单词字符。
\W 非单词字符:[^\w] 
D:边界匹配器
^ 行的开头 
$ 行的结尾 
\b 单词边界 
E:Greedy 数量词
X? X,一次或一次也没有 
X* X,零次或多次 
X+ X,一次或多次 
X{n} X,恰好 n 次 
X{n,} X,至少 n 次 
X{n,m} X,至少 n 次,但是不超过 m 次 
F:组
获组可以通过从左到右计算其开括号来编号
((A)(B(C))) 

第一组:(A)(B(C))
第二组:A
第三组:B(C)
第四组:C
(3)正则表达式的用途
A:匹配功能
字符串类的matches()方法
B:切割功能
字符串类的split()方法
叠词:(.)\\1+
C:替换功能
字符串类的replaceAll()方法
叠词保留一个:(.)\\1+,$1
D:获取功能
Pattern和Matcher

步骤:
Pattern p = Pattern.complie(规则);
Matcher m = p.matches(被查找的字符串);

while(m.find())
{
String s = m.group();
//操作s
}
原创粉丝点击