JAVA 正则表达式(练习)

来源:互联网 发布:影视制作的软件 编辑:程序博客网 时间:2024/04/29 19:56


//正则表达式练习import java.util.*;class RegexTest{public static void main(String []args){//test_1();//ipSort();checkMail();}/*需求: 对邮件地址进行校验*/public static void checkMail(){String mail = "abc12@sina.com";String reg = "[a-zA-Z0-9_]+@[a-zA-Z0-9]+(\\.[a-zA-Z]+)+";//较为精确的匹配reg = "\\w+@\\w+(\\.\\w+)+";//相对不精确的匹配  1@1.1 trueSystem.out.println(mail.matches(reg));}/*需求:将下列字符串转成:我要编程思路:1,如果只想知道字符是否对错 使用匹配2,如果想将已有的字符串变成另一个字符串  替换3,想要按照自定义的方式将字符串变成多个字符串。切割 ,获取规则以外的字串4,如果拿到符合需求的字符串字串,获取。获取符合规则的字串*/public static void test_1(){String str = "我我...我我..我...我要..要要..学学学学...学学..编...编程程";str = str.replaceAll("\\.+","");str = str.replaceAll("(.)\\1+","$1");System.out.println(str);}/*192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30将ip地址进行地址段的顺序排序还按照字符串自然顺序,只要让它们每一段都是3位即可1,按照每一段需要的最多的0进行补齐  那么每一段就会至少保证有3位2,将每一段只保留3位  这样,所有的ip地址都是每一段3位*/public static void ipSort(){String ip = "192.68.1.254 102.49.23.013 10.10.10.10 2.2.2.2 8.109.90.30";ip = ip.replaceAll("(\\d+)","00$1");//System.out.println(ip);ip = ip.replaceAll("0*(\\d{3})","$1");System.out.println(ip);String [] arr = ip.split(" ");TreeSet<String> ts = new TreeSet<String>();for(String s: arr){ts.add(s);}for(String s : ts){System.out.println(s.replaceAll("0*(\\d+)","$1"));}}}


原创粉丝点击