初学js正则
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初学js正则相关的知识,希望对你有一定的参考价值。
以下内容仅作为个人总结,如果有误,还请指出,谢谢
正则表达式的用途大致分为三种:
- 判断字符串是否匹配某种模式
- 将字符串中符合某种模式的内容替换掉
- 将字符串中符合某种模式的内容提取出来
js创建正则表达式:
- 通过实例化类的方式
new RegExp(pattern, attributes);
// 参数 pattern 是一个字符串,指定了正则表达式的模式或其他正则表达式// 参数 attributes 是一个可选的字符串,被称为修饰符,包含属性 "g"、"i" 和 "m",分别用于指定全局匹配、区分大小写的匹配和多行匹配。ECMAScript标准化之前,不支持 m 属性。如果 pattern 是正则表达式,而不是字符串,则必须省略该参数。
// 注意 如果 pattern 不是合法的正则表达式,或 attributes 含有 "g"、"i" 和 "m" 之外的字符,抛出该异常提示SyntaxError; 如果 pattern 是 RegExp 对象,但没有省略 attributes 参数,抛出该异常提示TypeError
-
字面量的方式
/pattern/attributes
js正则表达式相关属性:
- global 标识该正则是否具有修饰符 g
- ignoreCase 标识该正则是否具有修饰符 i
- multiline 标识该正则是否具有修饰符 m
- source 正则表达式中的字符串文本
- lastIndex 一个整数,标示开始下一次匹配的字符位置 ( test和exec方法执行后会修改该值,以备下一次匹配 )
js正则表达式相关方法:
- compile 方法将
pattern
转换为内部的格式,从而执行得更快。例如,这允许在循环中更有效地使用正则表达式。当重复使用相同的表达式时,编译过的正则表达式使执行速度更快。然而,如果正则表达式发生更改,则这种编译毫无益处。 - test 检索字符串是否匹配该正则。匹配则返回 true 否则返回 false。
- exec 检索字符串中指定的值。返回找到的值,并确定其位置。如果正则表达式中包含捕获型分组,则返回值中也包含捕获到的结果
支持正则表达式的 String 对象的方法
- search
- match
- replace
- split
后续内容待完善...
以上是关于初学js正则的主要内容,如果未能解决你的问题,请参考以下文章
通过 Java 正则表达式提取 semver 版本字符串的片段