正则表达式
语法: 一、普通字符 数字、字母、下划线、汉字、以及后边章节中没有特殊定义的标点符号 ? 二、转义字符 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("匹配的内容"); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |