正则表达式

1,正则表达式(regex):符合一定规则的表达式,java.util.regex.*;

作用:用于专门操作字符串

特点:用于一些特定的符号来表示一些代码操作,简化书写

好处:简化对字符串的操作;弊端:符号越多,正则越长,阅读性差

2,操作功能:

(1),匹配:String  matches,用规则匹配整个字符串,只要有一处不符合规则,就匹配结束,返回false;

常见的正则:[abc],[a-z],[a-zA-Z],[0-9]——\d,X?——一次或一次也没有,X+——一次或多次,X*——零次或多次

(2),切割:String  split

按照多个空格进行:“  +”

按照“.”进行:“\\.”

按照“\\”进行:“\\\\”

按照叠词进行:“(.)\\1+”

为了让规则的结果被重用,可以将规则封装一个组用()完成,组的出现都有编号,从1开始,想要使用已有的组可以通过   \n的形式来获取,n就是组的标号;

(3),替换:String  replaceAll

将字符串中的数组替换#:str.replaceAll(“\\d{n.}”,“#”),{n.}表示连续超过n个;

将叠词替换成$:str.replaceAll(“(.)\\1+”,“#”);

将重叠的字符替换成单个字母 zzz——z :str.replaceAll(“(.)\\1+”,“$1”);

(4),获取:将字符串中符合规则的子串取出

1),将正则表达式封装成对象

Pattern  p = Pattern.compile(reg)

2),让正则对象和要操作的字符串相关联,获取匹配器对象

Matcher  m  = p.matcher(str)

3),将规则作用到字符串上,并进行符合规则的子串查找

while(m.find())

{

    sop(m.group())用于获取匹配后的结果

}

String reg = “\\b{a-z}{3}\\b”,3表示取出的单词数;

3,思路:

(1)如果只想知道该字符是对是错,用匹配

(2)想要将已有的字符串变成另一个字符串,用替换

(3)想要按照自定的方式将字符串变成多个字符串,用切割(获取规则以外的子串)

(4)想要拿到符合需求的字符串子串,获取(获取符合规则的子串)



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值