JAVA 正则表达式常用功能

原创 2007年09月20日 09:52:00
 正则表达式在字符串处理上有着强大的功能,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();
  
  分割:
  
以下是代码片段: so.bitsCN.com网管资料库任你搜
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] 非数字
 /s 等於 [ /t/n/x0B/f ] 空白字元
 /S 等於 [^ /t/n/x0B/f ] 非空白字元
 /w 等於 [a-zA-Z_0-9] 数字或是英文字
  /W 等於 [^a-zA-Z_0-9] 非数字与英文字
  
  ^ 表示每行的开头
  $ 表示每行的结尾

java常用正则表达式

JAVA 中一些常用的正则表达式
  • tiandiwuya
  • tiandiwuya
  • 2016年07月26日 13:55
  • 851

常用正则表达式汇总,以java作为测试

package cn.pzh.demo;import java.util.Scanner; import java.util.regex.Pattern;public class PatternDem...
  • xiaoshiyiqie
  • xiaoshiyiqie
  • 2016年10月18日 20:13
  • 1224

20个常用的Java 功能代码

1. 把Strings转换成int和把int转换成String String a = String.valueOf(2);  //integer to numeric str...
  • d479437509
  • d479437509
  • 2016年07月12日 15:50
  • 730

JavaWeb——JavaScript常用正则表达式

JavaScript常用正则表达式
  • RamProg
  • RamProg
  • 2015年09月11日 23:34
  • 200

Java常用工具类三 -- 正则表达式

1.抓取网页email地址实例 实现思路: 1、使用java.net.URL对象,绑定网络上某一个网页的地址 2、通过java.net.URL对象的openConnectio...
  • he90227
  • he90227
  • 2014年07月13日 11:53
  • 1403

java常用正则表达式模板

下面是我积累的最常用也说明的最清楚的java正则表达式的编写 并给出了相关的表达式每一段这样写的注释,初学java正则的同学,一定能找到感觉和方向。 在后面我附上了自己调试的正则匹配代码,大家可以参考...
  • zfszhangyuan
  • zfszhangyuan
  • 2016年09月06日 16:50
  • 4192

Java与正则表达式

Java与正则表达式标签: Java基础正则 正如正则的名字所显示的是描述了一个规则, 通过这个规则去匹配字符串. 学习正则就是学习正则表达式的语法规则 正则语法普通字符字母, 数字, 汉字, 下...
  • hanqing280441589
  • hanqing280441589
  • 2016年01月03日 07:59
  • 5128

关于java正则表达式非捕获型括号和捕获型括号的研究

今天在做一个正则表达式的解析时,突然看见一个?:的例子,就看不懂了,然后在网上查了下,竟然是非捕获型括号,意思就是匹配pattern,但不包含在match的group方法里面。         (?:...
  • MINEZHANGHAO
  • MINEZHANGHAO
  • 2013年10月26日 16:27
  • 2836

正则表达式中问号的用法

1、需求背景 由于最近工作需要,要从网页链接中找到
  • maylorChao
  • maylorChao
  • 2014年05月28日 11:33
  • 5597

最常用的详细正则表达式大全

最常用的详细正则表达式大全 正则令人头疼, 很多不太懂正则的朋友,在遇到需要用正则校验数据时,往往是在网上去找很久,结果找来的还是不很符合要求。所以我最近把开发中常用的一些正则表达式整理了一下,在这里...
  • wuchengzeng
  • wuchengzeng
  • 2014年02月25日 10:41
  • 3965
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JAVA 正则表达式常用功能
举报原因:
原因补充:

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