Java基础知识总结梳理(八)

Java基础知识总结梳理(八)

正则表达式
参考资料:https://www.runoob.com/regexp/regexp-tutorial.html

正则表达式快速入门

  • 正则表达式是处理文本的利器
  • 正则表达式是对字符串执行模式匹配的技术
  • 步骤:
    • 创建正则字符串
    • 创建模式对象Pattern
    • 创建匹配器Matcher
    • 开始匹配

正则表达式基本语法

  1. 元字符-转义号 \
  • \ 符号说明:在我们使用正则表达式去检索某些特殊字符的时候,需要用到转义符号,否则检索不到结果,甚至会报错
  • 需要用到的转义符号的字符有以下:. * + ( ) $ / \ ? [ ] ^ { }
  1. 元字符-字符匹配符
  • [] 可接收的字符列表:
    • 示例:[efgh]e、f、g、h中的任意一个字符
  • [^]不可接收的字符列表
  • -连字符
    • 示例:A-Z 任意单个大写字母
  1. 元字符-选择匹配符
  • 在匹配某个字符串的时候是选择性的
    | 匹配 “|” 之前或者之后的表达式
  1. 元字符-限定符
  • 用于指定其前面的字符和组合项连续出现多少次
    • *指定字符重复0次或n次
    • +指定字符重复1次或n次
    • ?指定字符重复0次或1次(最多一次)
    • {n}只能输入n个字符
    • {n,}指定至少n个匹配
    • {n,m}指定知道n个但不多于m个匹配
  1. 元字符-定位符
  • ^指定起始字符
  • $指定结束字符
  • \b 匹配目标字符串的边界
  • \B 匹配目标字符串的非边界

三个常用类

  1. Pattern
  • pattern对象是一个正则表达式对象,Pattern类没有公共构造方法,要创建一个Pattern对象,调用其公共静态方法,它返回一个Pattern对象,该方法接受一个正则表达式作为它的第一个参数
  • Pattern r = Pattern.compile(pattern)
  1. Matcher
  • Matcher对象是对输入字符串进行解释和匹配的引擎,与Pattern类一样,Matcher也没有公共构造方法,需要调用Pattern对象的matcher方法来获得一个Matcher对象
  1. PatternSyntaxException
  • PatternSyntaxException是一个非强制异常类,它表示一个正则表达式模式中的语法错误

分组、捕获、反向引用

  1. 分组
  • 我们可以用圆括号组成一个比较复杂的匹配模式,那么一个圆括号的部分我们可以看作是一个子表达式/一个分组
  1. 捕获
  • 把正则表达式中子表达式/分组匹配的内容,保存到内存中以数字编号或显示命名的组里,方便后面引用,从左向右,以分组的左括号为标记,第一个出现的分组的组号为1,第二个为2,依次类推。组0代表的是整个正则式
  1. 反向引用
  • 圆括号的内容被捕获后,可以在这个括号后被使用,从而写出一个比较实用的匹配模式,这个我们称为反向引用,这种引用既可以是在正则表达式内部,也可以是在正则表达式外部,内部方向引用\分组号,外部反向引用$分组号

元字符

  • 限定符
  • 选择匹配符
  • 分组组合和反向引用符
  • 特殊字符
  • 字符匹配符
  • 定位符

参考内容:
【1】https://www.bilibili.com/video/BV1fh411y7R8?spm_id_from=333.337.search-card.all.click&vd_source=dd9bdf6f42e38406b07ef92b986e8171

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值