java之正则表达式
1.匹配邮箱
1 package com.oracle.demo01; 2 3 public class Pipeiyouxaing { 4 public static void main(String[] args) { 5 //验证邮箱 字母 数字 下划线 @ 字母或者数字 qq.com 163.com 6 String regex="[a-zA-Z_0-9]+@[a-zA-Z_0-9]+(\\.[A-Za-z]+)+"; 7 String QQ="724373155@qq.com"; 8 boolean b=QQ.matches(regex); 9 System.out.println(b); 10 11 } 12 13 }
注:设定regex规则,String数据类型(大小写字母或数字出现一次或多次,@,大小写字母或数字出现一次或多次,.,大小写字母出现一次或多次,然后整体出现一次或多次)
创建需要验证的字符串,
用字符串.matches(regex)
2.切割字符串
1 //split 切割 得到数组 2 String str="+861-185-533-31907";//此时要删除 “-” 3 //描述规则、 4 String regex="-"; 5 String[] arr=str.split(regex); 6 System.out.println(arr);//得到地址 7 String str1="192.168.165.171";//此时要删除 “.” 8 //描述规则、 9 String regex1="\\.";//第一个“\”转义 10 String[] arr1=str1.split(regex1); 11 for(int i=0;i<arr1.length;i++){ 12 System.out.println(arr1[i]);//得到地址 13 }
3.按照指定规则替换字符串
1 //替换 2 String s="a1a21a232sd156asd4a3s2d1a6s4d"; 3 //把数字替换为*号,所以先要匹配是否为数字 4 String regex2="[0-9]";//[0-9]+出现一次或多次 5 String s2=s.replaceAll(regex2, "*");//用*替换每位数字