加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-13 19:37:28 所属栏目:百科 来源:网络整理
导读:////匹配 使用的是String中的matches()方法 //////分割 使用的是String中的split()方法 ///替换 使用的是String中的replaceAll()方法 package com.xuan.demo;import java.util.regex.Matcher;import java.util.regex.Pattern;public class RegexDemo {public

////匹配

使用的是String中的matches()方法

//////分割

使用的是String中的split()方法

///替换

使用的是String中的replaceAll()方法

package com.xuan.demo;

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

public class RegexDemo {
	
	public static void main(String[] args){
		System.out.println("正则表达式");	
		///匹配
		RegexFunction2();
		
		///分割
		sqplitDemo();
		
		///替换
		replaceAllDemo();
		
		//获取
		PatternDemo();
		
	}

	public static void PatternDemo() {
		String str="ni lov ming,xixi,haha I Love You,fan xiaoxiao,jia dashu";
		
		//String regex="[a-z]{3}";///这写法获取有问题,没有指定边界
		String regex="b[a-z]{3}b";//有指定边界
		//将正则封装成对象
		Pattern p=Pattern.compile(regex);
		//通过正则获取匹配对象
		Matcher m=p.matcher(str);
		
		//m.find();///查找,找到返回true
		while(m.find()){
			System.out.println("-----:"+m.group());
		}
	}
	
	///替换
	public static void replaceAllDemo() {
		String str="xixitttttthahaniniwwwwwwwwwhehe";
		
		///将叠词替换成#号
		//str=str.replaceAll("(.)1+","#");//把连续重复的替换成#号
		str=str.replaceAll("(.)1+","$1");//把连续重复的替换成一个:==>xixithahaniniwhehe
		System.out.println("======>"+str);
		
		String tel ="15800001111";
		///(d{3})封装成组$1,(d{4})封装成组$2
		tel=tel.replaceAll("(d{3})d{5}(d{3})","$1****$2");
		System.out.println("=====>"+tel);///===>158****111
	}
	
	///分割
	public static void sqplitDemo() {
		String str="xiaoming wangcai xiaoqiang xiaoli";
		String[] names=str.split(" ");
		
		/*String str="xiaoming.wangcai.xiaoqiang";
		String[] names=str.split(".");*/
		
		for(String name : names){
			System.out.println("----->"+name);
		}
	}
   
	///匹配
	public static void RegexFunction2() {
		///手机校验
		String tel="15800001111";
		
		///第一位只能为1,第二位:只能是3,5,8,;后面9位数只能是数字,不能出现字母
		//String regex="1[358][0-9]{9}";
		String regex="1[358]d{9}";//简写
		boolean b=tel.matches(regex);
		System.out.println(tel+"==>"+b);
	}

}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读