0
点赞
收藏
分享

微信扫一扫

正则表达式的模式匹配

岛上码农 2022-03-14 阅读 179

正则表达式是一个描述字符模式的对象。JavaScript 的 RegExp 类表示正则表达式,String 和 RegExp 都定义了方法,后者使用正则表达式进行强大的模式匹配和文本检索与替换功能。

正则表达式的定义
正则表达式可以使用 RegExp() 构造函数来创建 RegExp 对象,更多的是通过一种特殊的直接量语法来创建。

var pattern = new RegExp('s$');
var pattern = / s$ /;

正则表达式中的所有字母和数字都是按照字面含义进行匹配的。JavaScript 正则表达式语法也支持非字母的字符匹配,这些字符需要通过反斜线(\)作为前缀转义。

1.直接量字符

字符匹配
字母和数字字符自身
\oNUL 字符(\u0000)
\t水平制表符(\u0009)
\v垂直制表符(\u000B)
\r回车符(\u000D)
\n换行符(\u000A)
\xnn由十六进制数 nn 指定的拉丁字符,例如,\x0A 等价于 \n
\uxxxx由十六进制数 xxxx 指定的 Unicode 字符,例如 \u0009 等价于 \t
\cX控制字符 ^X,例如,\cJ 等价于换行符 \n

2.字符类
将直接量字符单独放进方括号内就组成了字符类。一个字符类可以匹配它所包含的任意字符。

字符匹配
[…]方括号内的任意字符
[^…]不在方括号内的任意字符
.除换行符和其他 Unicode 行终止符之外的任意字符
\w任何 ASCII 字符组组成的单词,等价于 [ a-zA-Z0-9 ]
\W任何不是 ASCII 字符组成的单词,等价于 [ ^a-zA-Z0-9 ]
[…]方括号内的任意字符
[…]方括号内的任意字符
[…]方括号内的任意字符
[…]方括号内的任意字符
举报

相关推荐

0 条评论