JAVA正则表达式

来源:互联网 发布:dr.jart 知乎 编辑:程序博客网 时间:2024/06/07 03:33

正则表达式:通过一些符号体现,常用于校验。简化了书写。缺点:阅读性较差。

用于操作字符串,底层是对Pattern对象的操作。

正则表达式度对字符串的常见操作:

匹配:String的matches方法。

截取:String的split方法。

替换:String的replaceAll方法。

获取:Pattern对象和Matcher对象

import java.util.regex.Matcher;import java.util.regex.Pattern;public class RegularExpresseion {public static void main(String[] args) {//截取String s = "hhhh  3333    hafew";String[] split = s.split(" +");for (String string : split) {System.out.println(string);}String s3 = "111111.65756756.432423";//转义字符如果是.需要\\.String[] split3 = s3.split("\\.");for (String string : split3) {System.out.println(string);}String s2 = "54754trhrttttsfsdfsdfmmmmmmnoe@@sfe";String[] split2 = s2.split("(.)\\1+");for (String string : split2) {System.out.println(string);}//替换String s4 = "abccddeeffghhhhhhhhhhhhijkllmmnooopqqqrrrsst";String split4 = s4.replaceAll("(.)\\1+","$1");//$获取前一个分组System.out.println(split4);String s5 = "13854681125";String split5 = s5.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");//$获取前一个分组System.out.println(split5);//获取String s6 = "da jia hao ming tian fang jia la";Pattern pattern = Pattern.compile("\\b[a-z]{3}\b");Matcher matcher = pattern.matcher(s6);while(matcher.find()){System.out.println(matcher.group());}}}


0 0