• 【笔记】正则表达式·记③分组与引用


    正则表达式·记③

    括号在正则中的功能就是用于分组。简单来理解就是,由多个元字符组成某个部分,应该被看成一个整体的时候,可以用括号括起来表示一个整体

    分组与编号

    括号在正则中可以用于分组,被括号括起来的部分“子表达式”会被保存成一个子组,简单来说,第几个括号就是第几个分组

    比如,想要取一个2022-03-15 22:46:00,则可以写成

    (\d{4}-\d{2}-\d{2}) (\d{4}:\d{2}:\d{2})

    这就有了两个分组,其中,第一个括号的分组编号就是1,第二个括号的分组编号就是2

    不保存子组

    如果正则中出现了括号,那么我们就觉得,这个子表达式在后续可能会再次被引用,那么,只想用括号将某些部分看成一个整体,后续不用再用它的话,应该怎么办呢?这时我们可以在括号里面使用 ?: 不保存子组

    简单来说,不保存分组就是只执行分组的操作,把这一部分作为一个整体的元素,而不进行编号,后面就不会再使用这部分的引用,可以提高正则表达式的性能

    括号嵌套

    在括号嵌套的情况里,我们要看某个括号里面的内容是第几个分组怎么办?

    简单来说,我们只需要数左括号(开括号)是第几个,就可以确定是第几个子组,也就是从左往右数,当前左括号是第几个左括号,就是第几组

    命名分组

    命名分组的格式为(?P<分组名>正则)

    可以使用名称,不用编号,实际上命名分组的编号已经分配好了

    分组引用

    绝大多数的语言,我们就可以使用 “反斜扛 + 编号”,即 \number 的方式来进行引用,而 JavaScript 中替换是通过$编号来引用,查找是\,需要的时候查文档

  • 相关阅读:
    实验11——指针的基础应用
    C语言程序设计第10堂作业
    实验九——基本数据类型存储及应用总结
    C语言程序设计第8堂作业
    实验七——函数定义及调用总结
    实验六——循环结构程序练习总结
    实验五——循环结构学习总结
    实验四——多分支结构及本章总结
    9.29第三次作业
    zuoyeQAQ
  • 原文地址:https://www.cnblogs.com/jokingremarks/p/16015347.html
Copyright © 2020-2023  润新知