正则表达式怎么和if判断组成_正则表达式仅有3种功能

一般来说我们对于一段话无非三种操作

  1. 判断这段话是不是正确(比如:判断“你好”是不是“你好”这两个字,有点像有些部门要你证明你是你,你爸是你爸,)
  2. 从这段话提炼关键字(比如,“今天是第100天恋爱纪念日”,要提取出100这个数字)
  3. 替换关键字(比如,“今天是第100天恋爱纪念日”,要对100天加粗=》“今天是第100天恋爱纪念日”)
  • 判断是否为目标字符串

例如:怎么判断一个数字为0到9之间的数字呢?如下代码

String num="5";num.match("d");

如果得到true就是0到9的数字,否则就不是

  • 提取目标字符串
        Pattern pattern = Pattern.compile("(D*)(d*)(D*)");        Matcher m = pattern.matcher("今天是第100天恋爱纪念日");        if(m.matches()){            String g2 = m.group(2);            System.out.println(g2);        }

一个()就是一组,这里就将“今天是第100天恋爱纪念日”分成了三组

  1. (D*) :D表示非数字 *表示非数字的个数为任意个
  2. (d*) : d表示数字,这组就表示任意多个数字,100就满足
  3. (D*) :这个跟第一组意思一样

String g2 = m.group(2); 就是取出第二组,那么就拿到了100这个数字

  • 替换目标字符串
        String str = "今天是第100天恋爱纪念日";        String res = str.replaceAll("d{3}", "$0");        System.out.println(res);//今天是第100天恋爱纪念日

正则表达式基本功能仅以上三种,其他功能都是经过这三种变换出来的功能。

ebe3dbd242b63b6bc8543bcbabf78ca3.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值