码迷,mamicode.com
首页 > 其他好文 > 详细

正则表达式

时间:2017-08-27 11:05:12      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:pat   表达式   没有   group   pattern   []   str   font   strong   

正则表达式(理解)

 

	1、就是符合一定规则的字符串
	2、常见规则
		A:字符
			x 字符 x。举例:‘a‘表示字符a
			\\ 反斜线字符。
			\n 新行(换行)符 (‘\u000A‘) 
			\r 回车符 (‘\u000D‘)
			
		B:字符类
			[abc] a、b 或 c(简单类) 
			[^abc] 任何字符,除了 a、b 或 c(否定) 
			[a-zA-Z] a到 z 或 A到 Z,两头的字母包括在内(范围) 
			[0-9] 0到9的字符都包括
			
		C:预定义字符类
			. 任何字符。我的就是.字符本身,怎么表示呢? \.
			\d 数字:[0-9]
			\w 单词字符:[a-zA-Z_0-9]
				在正则表达式里面组成单词的东西必须有这些东西组成

		D:边界匹配器
			^ 行的开头 
			$ 行的结尾 
			\b 单词边界
				就是不是单词字符的地方。
				举例:hello world?haha;xixi
			
		E:Greedy 数量词 
			X? X,一次或一次也没有
			X* X,零次或多次
			X+ X,一次或多次
			X{n} X,恰好 n 次 
			X{n,} X,至少 n 次 
			X{n,m} X,至少 n 次,但是不超过 m 次 
	3、常见功能:(分别用的是谁呢?)
		A:判断功能
			String类的public boolean matches(String regex)
		B:分割功能
			String类的public String[] split(String regex)
		C:替换功能
			String类的public String replaceAll(String regex,String replacement)
		D:获取功能
			Pattern和Matcher
				Pattern p = Pattern.compile("a*b");
				Matcher m = p.matcher("aaaaab");
				
				find():查找存不存在
				group():获取刚才查找过的数据
	4、案例
		A:判断电话号码和邮箱
		B:按照不同的规则分割数据
		C:把论坛中的数字替换为*
		D:获取字符串中由3个字符组成的单词

正则表达式

标签:pat   表达式   没有   group   pattern   []   str   font   strong   

原文地址:http://www.cnblogs.com/zhanwang/p/7439706.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!