• 正则表达式


    正则表达式RegExp(Regular Expression):匹配 特殊字符或有特殊搭配原则的字符 的最佳选择。

    eg:匹配“XYXY”格式字符串。xxyy   xyzz

    知识点补充:

     

     

     

    1 语法规则

    1.1 创建方法

    两种创建方式:

    1、直接量

    其本身是一个对象,表达的意义是一种规则。

    (1)在两个斜杠中间写规则。

    (2)在正则表达式得双斜杠后边还可以加字母i、g、m,表达其属性。

    2、构造方法RegExp()

     

    使用new操作符,可以将已经存在的正则表达式用来给函数RegExp()传参,构造新的正则表达式

    1.2 三个属性i,g,m

    正则表达式的属性(也称修饰符),可以在全局搜索中不区分大小写:

     

    i ---》(ignoreCase )执行匹配时忽略大小写

    g---》(global)执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)

    m---》(multiline)执行多行匹配

    ​​​​​​​

     

     

    1.3 方括号

    方括号用于查找某个范围内的字符:

     

    • 一个中括号代表一位,中括号里边的内容代表的是这一位可以取值的范围
    • 插入符^放到[]里边表示"非"的意思
    • 在括号里可以加入"|"表示"或"的意思,"|"操作符两边放匹配规则

    1.4 元字符

    元字符是拥有特殊含义的字符,元字符也可以组合放进中括号里去使用,一个元字符代表一位(\d|\D)

     

    • "\w"---->[0-9A-z_],(word)单词字符,字母字符
    • "\d"---->[0-9]
    • "\s"---->匹配空白字符​ 空白字符包括:空格符[ ]、制表符\t、回车符\r、换行符\n、垂直换行符\v、换页符\f
    • "\b"---->匹配单词边界(border)
    •  "\t"---->匹配制表符

    unicode编码,\uXXXXXX,一般为6位16进制码

    不需要记住哪个字符对应是哪个Unicode编码,要用到的时候可借助“Unicode在线编码转换器”

    1.5 量词

    量词,代表数量的词(下面表达式的n代表的是一个匹配规则,n后边符号的符号定义量词规则)。

    贪婪匹配。

    • n+ ----> {1,Infinity}个
    • n* ----> {0,Infinity}个
    • n? ---->(0,1)个
    • n? ---->0个或1个
    • ^n ----> 匹配以n 为开头的字符串n
    • n$ ----> 匹配以n 为结尾的字符串n
    • ?=n ----->n只参与条件限定,限定其后紧接指定字符串n 的字符串,但并不参与选择
    • ?!n ----->n只参与条件限定,限定其后没有紧接指定字符串n 的字符串,但并不参与选择

    来做点题吧~

    练习一:写一个正则表达式,检验字符串首尾是否含有数字。

    练习二:写一个正则表达式,检验字符串首尾是否含都有数字。

  • 相关阅读:
    LeetCode 第3题:无重复字符的最长子串(Python3解法)
    和力链携手纷享销客推动CRM业财一体化,引领大健康产业数智化发展
    MacBookPro制作Windows 11 U盘启动盘
    Code Llama:Llama 2 学会写代码了!
    Kibana使用Watcher监控服务日志并发送飞书报警(Markdown)
    Vulnhub实战-prime1
    服务器硬件的基础知识
    Java项目:SSM智能制造车间管理系统
    CH06_第一组重构(下)
    请收好|实验室仪器管理知识大全
  • 原文地址:https://blog.csdn.net/cjx177187/article/details/125468228