java 正则表达式高级篇,介绍四种常用的处理方式:匹配、分割、替代、获取,具体内容如下

package test; 

import java.util.regex.Matcher; 
import java.util.regex.Pattern; 

/** 
* 正则表达式 
* 正则表达式 的用法主要是4种方面的使用 
* 匹配,分割,替换,获取. 
* 用一些简单的符号来代表代码的操作 
* @author cyc 
* 
*/ 
public class Rex { 
public static void main(String[] args) { 
//针对字符串处理 
Rex reg = new Rex(); 
//校验qq的reg正则表达式 
//这里的\w 是指的是[a-zA-Z0-9],还有一个重要的是?,*.+这三个分别 
//?表示出现1次或者1次都没有, 
//+表示出现1次或者n次, 
//*表示出现0次或者n次, 
//还有些特殊的写法X{n}恰好n次X{n,}至少n次,X{n,m}n次到m次, 
String mathReg = "[1-9]\\d{4,19}"; 
String divisionReg = "(.)\\1+"; 
//\\b 是指的边界值 
String getStringReg = "\\b\\w{3}\\b"; 
//字符串匹配(首位是除0 的字符串) 
reg.getMatch("739295732",mathReg); 
reg.getMatch("039295732",mathReg); 
//字符串的替换 
//去除叠词 
reg.getReplace("12111123ASDASDAAADDD",divisionReg,"$1"); 
//字符串的分割 
//切割叠词,重复的 
//这里要知道一个组的概念(.)\\1第二个和第一个至相同 
reg.getDivision("aadddddasdasdasaaaaaassssfq",divisionReg); 
//字符串的获取 
//现在获取三个字符串取出 
reg.getString("ming tian jiu yao fangjia le ",getStringReg); 
} 
/** 
* 获取查询的字符串 
* 将匹配的字符串取出 
*/ 
private void getString(String str, String regx) { 
//1.将正在表达式封装成对象Patten 类来实现 
Pattern pattern = Pattern.compile(regx); 
//2.将字符串和正则表达式相关联 
Matcher matcher = pattern.matcher(str); 
//3.String 对象中的matches 方法就是通过这个Matcher和pattern来实现的。 

System.out.println(matcher.matches()); 
//查找符合规则的子串 
while(matcher.find()){ 
//获取 字符串 
System.out.println(matcher.group()); 
//获取的字符串的首位置和末位置 
System.out.println(matcher.start()+"--"+matcher.end()); 
} 
} 
/** 
* 字符串的分割 
*/ 
private void getDivision(String str, String regx) { 
String [] dataStr = str.split(regx); 
for(String s:dataStr){ 
System.out.println("正则表达式分割++"+s); 
} 
} 
/** 
* 字符串的替换 
*/ 
private void getReplace(String str, String regx,String replaceStr) { 
String stri = str.replaceAll(regx,replaceStr) ; 
System.out.println("正则表达式替换"+stri); 
} 
/** 
* 字符串处理之匹配 
* String类中的match 方法 
*/ 
public void getMatch(String str, String regx){ 
System.out.println("正则表达匹配"+str.matches(regx)); 
} 
}

java正则表达式四种常用的处理方式是怎么样呢《匹配、分割、代替、获取》的更多相关文章

  1. JAVA 正则表达式4种常用的功能

    下面简单的说下它的4种常用功能:   查询:   以下是代码片段: String str="abc efg ABC";    String regEx="a|f" ...

  2. 四种常用的access连接方式

    整理出四种常用的access连接方式,当然,第1种这是最常用的(推荐使用).1. set dbconnection=Server.CreateOBJECT("ADODB.CONNECTION ...

  3. java内部类及四种内部类的实现方式

     java内部类及四种内部类的实现方式 一.内部类定义:内部类分为: 成员内部类.静态嵌套类.方法内部类.匿名内部类. 二.为何要内部类?a.内部类提供了某种进入外围类的窗户.b.也是最吸引人的原因, ...

  4. Java中四种引用:强、软、弱、虚引用

    这篇文章非常棒:http://alinazh.blog.51cto.com/5459270/1276173 Java中四种引用:强.软.弱.虚引用 1.1.强引用当我们使用new 这个关键字创建对象时 ...

  5. Java基础:Java的四种引用

    在Java基础:java虚拟机(JVM)中,我们提到了Java的四种引用.包括:强引用,软引用,弱引用,虚引用.这篇博客将详细的讲解一下这四种引用. 1. 强引用 2. 软引用 3. 弱引用 4. 虚 ...

  6. java中四种引用类型(对象的强、软、弱和虚引用)

    对象的强.软.弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象.也就是说,只有对象处于可触及(reachable)状态,程序才能使用它.从JDK 1.2 ...

  7. 【转】 FPGA设计的四种常用思想与技巧

    本文讨论的四种常用FPGA/CPLD设计思想与技巧:乒乓操作.串并转换.流水线操作.数据接口同步化,都是FPGA/CPLD逻辑设计的内在规律的体现,合理地采用这些设计思想能在FPGA/CPLD设计工作 ...

  8. 转--Android按钮单击事件的四种常用写法总结

    这篇文章主要介绍了Android按钮单击事件的四种常用写法总结,比较了常见的四种写法的优劣,有不错的参考借鉴价值,需要的朋友可以参考下     很多学习Android程序设计的人都会发现每个人对代码的 ...

  9. java中四种引用类型

    java中四种引用类型  今天看代码,里面有一个类java.lang.ref.SoftReference把小弟弄神了,试想一下,接触java已经有3年了哇,连lang包下面的类都不了解,怎么混.后来在 ...

随机推荐

  1. 关于mysql的错误 - no query specified

    Mysql----error:no query specified mysql下抛出错误:error:no query specified出现此错误是sql不合法原因:如:select * from ...

  2. “双十一”购物狂欢节,电商运营和商业智能(BI)才是绝配

         百年前,人们获取信息的方式是通过报纸.书籍:十年前,人们获取信息的方式是通过传统PC互联网:而如今,在4G网络高速发展的浪潮下,伴随着移动智能终端的普及,人们获取信息的方式已经逐渐转向了移动 ...

  3. [转帖]Speed-BI数据分析案例:2016年8月汽车销量排行榜

    [转帖]Speed-BI数据分析案例:2016年8月汽车销量排行榜 据中国汽车工业协会统计分析,2016年8月,乘用车市场表现较好,当月销量环比和同比均呈较快增长.1-8月,乘用车销量总体呈稳定增长, ...

  4. XUtils框架中HttpUtils使用Get请求时总是返回相同信息的问题解决,xutilshttputils

    如需转载请标明出处:http://blog.csdn.net/itas109 版本:Xutils 2014年11月11日 下载地址:https://github.com/wyouflf/xUtils ...

  5. [转载]如何破解Excel VBA密码

    原文链接:http://yhf8377.blog.163.com/blog/static/1768601772012102111032840/ 在此之前,先强调一下,这个方法只是用来破解Excel内部 ...

  6. nagios监控linux主机监控内存脚本

    说明 工作包括两部分监控端(一二三)和被监控端(四) 一.nrpe.cfg中添加脚本 nrpe.cfg中添加命令索引 command[check_used_mem]=/usr/local/nagios ...

  7. JQuery-UI Dialog下使用服务器端按钮失效

    目标:点按钮弹出div层,选择数据后自动隐藏div,将所选数据赋值到窗体. <div id="divWinPop"> //里面是要实现弹出框的代码,包括翻页.查找等. ...

  8. 正确导入android-support-v4.jar的方法

    在导入使用了ViewPage,ActionBar,Fragment的工程后出现错误,很有可能是没有导入4.0版本的支持包. 首先在Project->properties->Java Bui ...

  9. 关于Eclipse的unsupported major minor version 51.0 错误

    把别人的工程 拿来运行报上述错误 是因为工程版本不对 解决办法:新建工程 把现有的代码或资源文件  拷到新建工程里

  10. Azure billing 分析(2)

    美国中南部的2008R2的A1的VM放了一天,CPU时间涨了13个小时,有点小贵,真的没有操作啊... 提示早上7到9点有一个小高峰. 看来平时没什么访问量时,还是改成A0能省点钱.因为第一天是用A0 ...