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, "*");//用*替换每位数字
原文地址:https://www.cnblogs.com/mlf19920916/p/12099186.html