download:Spark+ES+ClickHouse 构建DMP用户画像

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));  }  

}