正则表达式 2017/6/12

1.按照空格切割:

String str="s  t    r       in    g";

String[] datas=str.split(" +");   

System.out.println(Arrays.toString(datas);

2.按照重叠词切割:

Stirng str="大家家家明天天天天一起来来来哦";

String[] datas=str.split("(.)\\1+");

System.out.println(Arrays.toString(datas);

3.替换:

  String str="s  t    r       in    g";

  str.replaceAll(" +"," ");   //str.replaceAll("\\s+"," ");

4.替换:

  String str6="我我我要要要做做想想想木木木木";
  System.out.println(str6.replaceAll("(.)\\1+","$1"));   //我要做想木

  //如果需要在replaceAll方法正则的外部引用组的内容,那么使用“$组号”

5.查找:

  //找出三个字母组成的单词
  //单词边界匹配器 \b
  // * 代表单词的开始或者是结束部分,不匹配任何的字符
  String str="da jia de jia qi wan bi liao hai kai xin ma";

  //将字符串编译成正则对象
  Pattern p=Pattern.compile("[a-zA-Z]{3}\\b");
  Matcher ma=p.matcher(str);
  //必须先find(),否则会报错
  while(ma.find()){
    System.out.println(ma.group());
    }
  }

posted @ 2017-12-25 09:50  Nico-luo  阅读(132)  评论(0编辑  收藏  举报