• Java正则表达式测试用例


    (1)对IP地址进行排序:

    public static void test_1() {
            String ip_str = "192.168.10.34   127.0.0.1 3.3.3.3 105.70.11.55 ";
            // 1,为了让ip可以按照字符串顺序比较,只要让ip的每一段的位数相同。
            // 所以,补零,按照每一位所需做多0进行补充。每一段都加两个0.
            ip_str = ip_str.replaceAll("(\d+)", "00$1");
            System.out.println(ip_str);
            // 然后每一段保留数字3位。
            ip_str = ip_str.replaceAll("0*(\d{3})", "$1");
            System.out.println(ip_str);
            // 1,将ip地址切出。
            String ips[] = ip_str.split(" +");
            TreeSet<String> ts = new TreeSet<String>();
            for (String ip : ips) {
                ts.add(ip);
            }
            // 对一个字段的四个部分按规则再切一次
            for (String ip : ts) {
                System.out.println(ip.replaceAll("0*(\d+)", "$1"));
            }
        }

    运行结果:

    00192.00168.0010.0034   00127.000.000.001 003.003.003.003 00105.0070.0011.0055 
    192.168.010.034   127.000.000.001 003.003.003.003 105.070.011.055 
    3.3.3.3
    105.70.11.55
    127.0.0.1
    192.168.10.34

     (2)字符串截取:

    public static void test_2() {
            String st1 = "今今今....今今今....天....天天天天天....天天天.学学学.学学学学学学...学.习习习...习习习习";
            // 将字符串中的"."去除
            String regex = "\.+";
            st1 = st1.replaceAll(regex, "");
            System.out.println(st1);
            // 去除叠词
            st1 = st1.replaceAll("(.)\1+", "$1");
            System.out.println(st1);
        }

    运行结果:

    今今今今今今天天天天天天天天天学学学学学学学学学学习习习习习习习
    今天学习

      (3) 对邮件地址校验:

    public static void test_3() {
      String mail = "abc1@sina.com.cn";
    
      String regex = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\.[a-zA-Z]{1,3})+";
    
      regex = "\w+@\w+(\.\w+)+";// 1@1.1
    
      boolean b = mail.matches(regex);
    
      System.out.println(mail + ":" + b);
     }

     运行结果:

    abc1@sina.com.cn:true

    本文为博主原创文章,转载请注明出处:http://www.cnblogs.com/ysw-go/
    1、本博客的原创原创文章,都是本人平时学习所做的笔记,如有错误,欢迎指正。
    2、如有侵犯您的知识产权和版权问题,请通知本人,本人会即时做出处理文章。
    3、本博客的目的是知识交流所用,转载自其它博客或网站,作为自己的参考资料的,感谢这些文章的原创人员

  • 相关阅读:
    xshell,putty远程连接Linux并使用密钥认证
    配置IP
    认识linux
    dpkg: error processing package libraspberrypi-doc (--configure): package is in a very bad inconsistent state;
    pi4j,Netbeans中togglebutton跟Jbutton的区别
    Netbeans配置Java SE嵌入式平台(树莓派)
    发光二极管正负极判断
    Eclipse安装图形JFrame,Jswing编程界面
    阿里云Centos6.9安装图形化界面
    Oracle 一个中文汉字 占用几个字节,由Oracle中字符集编码决定
  • 原文地址:https://www.cnblogs.com/ysw-go/p/5342440.html
Copyright © 2020-2023  润新知