政则表达式

原创 2004年10月08日 16:57:00
标题   正则表达式几种常用功能——查询,提取,替换,分割     选择自 hanlichou 的 Blog
关键字   正则表达式几种常用功能——查询,提取,替换,分割
出处  
 

正则表达式在字符串处理上有着强大的功能,sun在jdk1.4加入了对它的支持

下面简单的说下它的4种常用功能:

查询:

String str="abc efg ABC";

String regEx="a|f";   //表示a或f

Pattern p=Pattern.compile(regEx);

Matcher m=p.matcher(str);

boolean rs=m.find();

如果str中有regEx,那么rs为true,否则为flase。如果想在查找时忽略大小写,则可以写成Pattern p=Pattern.compile(regEx,Pattern.CASE_INSENSITIVE);

提取:

String regEx=".+////(.+)$";

String str="c://dir1//dir2//name.txt";

Pattern p=Pattern.compile(regEx);

Matcher m=p.matcher(str);

boolean rs=m.find();

for(int i=1;i<=m.groupCount();i++){

System.out.println(m.group(i));

}

以上的执行结果为name.txt,提取的字符串储存在m.group(i)中,其中i最大值为m.groupCount();

分割:

String regEx="::";

Pattern p=Pattern.compile(regEx);

String[] r=p.split("xd::abc::cde");

执行后,r就是{"xd","abc","cde"},其实分割时还有跟简单的方法:

String str="xd::abc::cde";

String[] r=str.split("::");

替换(删除):

String regEx="a+"; //表示一个或多个a

Pattern p=Pattern.compile(regEx);

Matcher m=p.matcher("aaabbced a ccdeaa");

String s=m.replaceAll("A");

结果为"Abbced A ccdeA"

如果写成空串,既可达到删除的功能,比如:

String s=m.replaceAll("");

结果为"bbced  ccde"

附:

/d 等於 [0-9] 數字
/D 等於 [^0-9] 非數字
/s 等於 [ /t/n/x0B/f/r] 空白字元
/S 等於 [^ /t/n/x0B/f/r] 非空白字元
/w 等於 [a-zA-Z_0-9] 數字或是英文字
/W 等於 [^a-zA-Z_0-9] 非數字與英文字

^ 表示每行的開頭
$ 表示每行的結尾

正规则表达式参考

 开篇,还是得说说 ^ 和 $ 他们是分别用来匹配字符串的开始和结束,以下分别举例说明:  "^The": 开头一定要有"The"字符串;  "of despair$": 结尾一定要有"of desp...
  • ASdeAK
  • ASdeAK
  • 2007年11月19日 10:09
  • 3012

js证则表达式

原文:http://blog.csdn.net/zaifendou/article/details/5746988 1. 正则表达式规则 1.1 普通字符     字母、数字...
  • sidongxue2
  • sidongxue2
  • 2015年04月13日 14:51
  • 458

Java中使用这则表达式

正则表达式主要用于查找,提取,分割,替换;例如爬虫,批量下载资源的地方使用,下面来简单的介绍下这则表达式的使用 String类里面提供的方法 boolean matchea(String rege...
  • HANLIPENGHANLIPENG
  • HANLIPENGHANLIPENG
  • 2016年04月06日 11:23
  • 410

JAVA常用类之——正测表达式

JAVA常用类之——正则表达式     首先,正测表达式是按一定的规则来处理字符串的,具体就包括判断,获取,分割,替换功能。     通常,它被用于下面两个目的:     1. 匹配一串...
  • fanwenjieok
  • fanwenjieok
  • 2015年07月20日 15:43
  • 595

快讯:方正证券股东政泉控股所持公司股权继续遭冻结两年

快讯:方正证券股东政泉控股所持公司股权继续遭冻结两年8月4日讯,方正证券(8.720, 0.07, 0.81%)(601901)周五晚间公告,公司收到通知,公司股东政泉控股持有的公司股份17.99亿股...
  • yuanmeng001
  • yuanmeng001
  • 2017年08月23日 16:09
  • 247

第六章EL和JSTL> 3-el表达式运算符

el中的常量 true  false 1       1.1    "aa"   null 算术表达式   +  -  *div / mod % 关系表达式  gt >   >= ge   逻辑表达式...
  • junjialuo
  • junjialuo
  • 2016年08月11日 22:28
  • 182

曹政谈数据分析:数据分析这点事

整理自:http://hi.baidu.com/ncaoz/item/564975db8fcd6495260ae79e 先声明一下,按照传统的定义,我还真不是数据分析高手,各种关联算法,只会...
  • zhoudaxia
  • zhoudaxia
  • 2013年04月17日 12:36
  • 1607

雷政富:你的长相吓着我了

雷政富:长相惊动党中央 事迹笑翻全民族.   有一些人,他在历史上的最大作用就是变身笑柄,供人调侃、戏谑,比如前重庆北碚区委书记雷政富君。本来攻击一位中年男性的长相是一件不大道德,或至...
  • cometwo
  • cometwo
  • 2013年06月29日 13:24
  • 1821

邱政政--听力十大必背段子

2006-06-26 23:51:44 邱政政--听力十大必背段子 1. 000139 文科段子:艺术类音乐It may seem strange that were discus...
  • mybirdsky
  • mybirdsky
  • 2008年01月17日 16:41
  • 437

C Primer Plus学习 八 for语句和do while语句

总结:for语句 关键字: 总体注解: for语句使用由分号分开的三个控制表达式来控制循环过程。initialize表达式只在循环语句 执行之前执行一次。然后对test表达式求值,如果该表达式为真(...
  • u014572215
  • u014572215
  • 2016年10月04日 10:48
  • 120
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:政则表达式
举报原因:
原因补充:

(最多只允许输入30个字)