加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式

发布时间:2020-12-14 05:59:21 所属栏目:百科 来源:网络整理
导读:语法: 一、普通字符 数字、字母、下划线、汉字、以及后边章节中没有特殊定义的标点符号 ? 二、转义字符 n、t、、^、$、. 、( 、 ) 、 { 、 } 、 ? 、 + 、 * 、 | 、[、 ] ? 三、标准字符集合:能够与"多种字符"匹配的表达式 d 匹配0-9的

语法:

一、普通字符

  数字、字母、下划线、汉字、以及后边章节中没有特殊定义的标点符号

?

二、转义字符

  n、t、、^、$、. 、( 、 ) 、 { 、 } 、 ? 、 + 、 * 、 | 、[、 ]

?

三、标准字符集合:能够与"多种字符"匹配的表达式

  d 匹配0-9的一个数字

  w 匹配一个"单词"(匹配一个字母、数字、下划线)

  s 匹配一个空格、制表符、换行符等空白字符的其中任意一个

  . ?匹配除了换行符(n)以外 的任意一个字符

  注意:在标准字符集合中,大写字母(DWS)表示取反

?

四、自定义字符集合:[ ]方括号匹配方式,匹配方括号中任意一个字符

  1.方括号中写什么字符,就匹配与之对应的字符

  2.如果数字太多、字母太多,我们可以写成"0-9","a-z"这样的形式

  3.如果不想取某些内容,在[ ]中的第一个位置添加"^"

?

五、匹配次数

  1.{n} ?表达式重复n次

  2.{m,n} ? 表达式最少出现m次,最多出现n次

  3.{m,} ? 表达式最少出现m次 ?

  ({,n}这是错误的正则表达式)

  4. ? 表达式匹配0次或者匹配1次,相当于{0,1}

  5. +表达式至少匹配一次,相当于{1,}

  6. * 表达式出现若干次,}

?

注意:贪婪模式与非贪婪模式

? ? ? ?匹配次数中的贪婪模式(匹配字符越多越好) -->默认情况

? ? ? ?匹配次数中的非贪婪模式(匹配字符越少越好) -->在匹配次数的末尾添加一个"?"

?

六、单词边界(本组标记匹配的不是字符而是位置,符合某种条件的位置)

  b ?匹配一个单词边界 (约等于W)

  ^ 匹配后面一个字符必须作为开头

  $ 匹配前面一个字符必须作为结尾

?

七、一些特殊概念

  | ?在正则表达式中表示"或"的概念

  () ?分组操作符,在正则表达式中表示将正则内容作为一个整体去进行操作

  反向引用

? ? ?   ?每一对()会分配一个编号(组号),使用 () 的捕获根据左括号的顺序从 1 开始自动编号

? ? ?   ?通过反向引用,可以对分组已捕获的字符串进行引用。

?

八、匹配模式

? ? ? ?单行模式:开启则" . "号会匹配所有字符,不开启则匹配除了换行符之外的所有字符

? ? ? ?多行模式

? ? ? ?忽略大小写模式:忽略大小写模式,在正则匹配时,忽略字母的大小写

? ? ? ?全局模式:(js中)全局模式,在做正则替换的时,替换文本中所有匹配的结果

?

九、正则表达式在js中的使用:

? ? ? ?1.创建正则表达式

? ? ? ? ? ? ? ?①var re1 = new RegExp("正则表达式内容","匹配模式");

? ? ? ? ? ? ? ?②var re2 = /正则表达式内容/匹配模式

? ? ? ?2.正则匹配

? ? ? ? ? ? ? ?var bool ?= ?正则表达式对象.test("匹配的内容");

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读