JAVA正则表达式(二)

正则表达式:符合一定规则的表达式
作用:用于专门操作字符串
特点:用于一些特点的符号来表示一些代码操作。这样的就简化书写
学习正则表达式就是学习一些特殊符号的使用
具体操作功能:
1.匹配:String 类的matches()
2.切割:String类的split()
3.替换:String类的replaceAll()
4.获取:将字符串中符合规则的字串取出
   (1)将正则表达式封装成对象
   (2)让正则对象和要操作的字符串相关联。
   (3)关联后,获取正则匹配引擎。
   (4)通过引擎对符合规则的字串进行操作,比如取出。
{n}指定的为剩余的9位,不能多不能少;
{n,m}只能是n到接下来的m位,要匹配的字符串可以多余m位,但是不能少。
{n,}指定是n位数以上的所有的
"(.)\\1"按照叠词完成切割,为了可以让规则的结果重用,可以将规则封装一个组。
       用()完成,组的出现都有编号。从1开始,
  想要使用已有的组可以通过 \n(n就是组的编号)的形式来获取。
"\\\\"按照\\进行切割

" +":" +"出现一次或多次,用"."则必须用"\\."进行转义


class  RegexDemo
{
	public static void main(String[] args) 
	{
		//demo();
		checkTel();
		//splitDemo("c:\\abc\\a.txt","\\\\");//按照\\进行切割
        //splitDemo("erkktyqquiio","(.)\\1");
         //replaceAllDemo("we54544456464sy455446dsdsa5451","\\d{0,}","#");

	}
	public static void demo(){
	  String str="56566565666666464";
	  //char[] buf=str.toCharArray();
	  String reg="[1-9][[0-9]&&[^a-zA-Z]]{4,14}";
	  boolean b=str.matches(reg);
	  System.out.println(b);
	
	}
	//匹配手机号 13xxx  15xxx  18xxx
	public static void checkTel(){
	   String tel="151723174065";
	   String telReg="1[358]\\d{3,}";
	   boolean flag=tel.matches(telReg);
	   System.out.println(flag);
	   
	
	}
	public static void splitDemo(String str,String reg){
	
	  //String str="zhangsan    lisi    wangwu";
	  //str="c:\\abc\\a.txt";
	  //String reg=" +";//
	  String[] arr=str.split(reg);
	    for(String s:arr)
		 {
	       System.out.println(s);
	  
	     }
	}
	public static void replaceAllDemo(String str,String reg,String newStr){
	   str=str.replaceAll(reg,newStr);
	   System.out.println(str);
		
	
	
	}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值