您的位置:首页 > 其它

正则表达式的具体操作功能3

2015-04-17 09:42 141 查看
package regular;

import java.util.*;

public class RegexDemo3 {

 /**

  * @param args

  * 1.如果只想知道改字符对错,用匹配。

  * 2.想要将已有的字符串编程另一个字符串,替换。

  * 3.想要按照自定的方式将字符串变成多个字符串,切割。(获取规则外的子串)

  * 4.想要拿到符合需求的字符串子串,获取。(获取符合规则的子串)

  */

 public static void main(String[] args) {

  

  //reg_demo1();

//  reg_demo2();

  

  check_mail();

  

 }

 private static void check_mail() {

  //校验邮件地址

  String mail = "abc12@sina.com.cn";

  

  String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+){1,3}";//精确匹配

  

  String reg1 ="\\w+@\\w+(\\.\\w+){1,3}";

  

  sop(mail.matches(reg1));

 }

 private static void reg_demo2() {

  /*

  192.68.1.254 102.49.23.103 10.10.10.10 2.2.2.2 8.109.90.30

  

   */

  String ip = "192.68.1.254 102.49.23.103 10.10.10.10 2.2.2.2 8.109.90.30";

  ip = ip.replaceAll("(\\d+)", "00$1");

  sop(ip);

  ip = ip.replaceAll("0*(\\d{3})", "$1");

  sop(ip);

  

  sop("------------------------------");

  

  String[] arr = ip.split(" ");

  

  TreeSet<String> ts = new TreeSet<String>();//排序,在这里好像没有起到作用

  for(String s:arr){

   ts.add(s);

  }

  

  for(String s:arr){

   //s=s.replaceAll("0*(\\d+)", "$1");

   sop(s);

  }

 }

 private static void reg_demo1() {

  String str = "我我...我我...我要...要要...要要...学学学...学学...编编编...编程..程.程程...程...程";

  /*

  想要将已有的字符串编程另一个字符串,替换。

  1.先将 . 去掉

  2.将多个重复内容替换为单个内容

  */

  str=str.replaceAll("\\.", "");

  

  sop(str);

  

  str=str.replaceAll("(.)\\1+", "$1");

  

  sop(str);

 }

 private static void sop(Object obj) {

  System.out.println(obj);

 }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: