Java - 正则表达式

正则表达式

字符集

1、[]:表示括号内的内容任意一个都符合,如

[0124]:0,1,2,4 
[0-4]:0,1,2,3,4
[0-9,a-z,A-Z] 自然数0-9,小写字母,大写字母都符合

2、{}:出现的次数

{2}:至少2{0,2}:0,1,2{3,}:3到无穷次

3、():表示括号内的内容是个整体

12:独立的12
(12):十二

预定义符

\d:表示0-9的任意数字[0-9]
\D:表示除了数字之外[^0-9]
\w:表示数字字母下划线[0-9a-zA-Z_]
\W:表示数字字母下划线之外[0-9a-zA-Z_]
\s:表示一个空格 [ ]
\S:表示除了空格之外[^ ]
.:表示任意字符
 \.:表示点号    //java中\以\\表示,用以区分java中的\
 ?:{0,1}
 +:{1,}
 *:{0,}
 \:表示转义字符
 [\u4e00-\u9fa5]:表示一个中文
 ?=.*:不全是
 ?=.*[0-9] :不全是0-9组成

java对正则表达式的支持

Pattern与Matcher
   /*
   * 验证电话号码格式是否正确
    * 
    * */
    public static void method01() {
        String mobile = "15777143990";
        String regex = "1[3-9]\\d{9}";

        if (mobile.matches(regex)){
            System.out.println("成功");
        }else {
            System.out.println("失败");
        }
    }

String对正则表达式的支持

matchers
        String mobile = "15777143990";
        String regex = "1[3-9]\\d{9}";
        Boolean flat = mobile.matches(regex);
        if (flat){
            System.out.println("成功");
        }else {
            System.out.println("失败");
        }
replaceAll
       str = "123fd34sf32423sd234fs2342sdf";
        //匹配替换 replaceAll replaceFirst
        String reg2 = "[a-zA-Z]+";
        str = str.replaceAll(reg2,",");
        System.out.println("替换后:" + str);

结果输出:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值