正则表达式能涵盖哪些核心知识点?
- 内容介绍
- 文章标签
- 相关推荐
本文共计666个文字,预计阅读时间需要3分钟。
原文中使用了n来指代具体字符,以下是对原文的简化
原文:本文字中用n指代具体字符+描述+核心——正则表达式是匹配模式,要匹配字符,要匹配位置。组成——修饰符、元字符、量词、特殊符号和特定语言API。基本量词+n++大于等于1个字符
简化用n代表字符+描述+核心——正则表达式是匹配模式,需匹配字符和位置。构成——修饰符、元字符、量词、特殊符号及特定API。基础量词+n至少1个字符
概述本文中用n指代具体字符
-
核心——正则表达式是匹配模式,要么匹配字符,要么匹配位置。
-
组成——修饰符、元字符、量词、特殊符号和特定语言API。
n+ 大于等于1个字符
n* 大于等于0个字符
n? 包含0个或1个字符
n{x} 包含x个字符
n{x,} 包含x个以上字符
n{x,y} 包含x到y个字符
修饰符
g 全局匹配
i 字母大小写不敏感
m 多行匹配
y 粘连匹配
s 拓展点字符(任意字符)
u 处理超范围Unicode字符
元字符
\d\D 数字/非数字
\w\W 字母/非字母
\s\S 空白/非空白
\b\B 单词/非单词边界
\xxx 查找8进制字符
\udd 查找16进制
\数字 反向引用
特殊符号
() 分组
[] 字符组
| 或
?=n/?!n 先行断言
?<=n/><!n 后行断言
^ 匹配开头
$ 匹配结尾
特定语言API
RegExp.prototype.compile // 编译正则表达式。
RegExp.prototype.test // 检索字符串中指定的值。返回 true 或 false。
RegExp.prototype.test // 检索字符串中指定的值。返回找到的值,并确定其位置。
String.prototype.search // 检索与正则表达式相匹配的值。
String.prototype.match // 找到一个或多个正则表达式的匹配。
String.prototype.replace // 替换与正则表达式匹配的子串。
String.prototype.split // 把字符串分割为字符串数组。
应用
位置
开头/结尾:^、$
单词边界:\b、\B
断言/环视:?=n、?!n、?<=n、?<!n
模糊匹配
(量词)横向模糊匹配:n{x,y}、n{x,}、n+、n*、n?
(字符组)纵向模糊匹配:[]、\d、\D、\w、\W、\s、\S
分组/分支/引用
分组:()
分支:|
引用:\数字
本文共计666个文字,预计阅读时间需要3分钟。
原文中使用了n来指代具体字符,以下是对原文的简化
原文:本文字中用n指代具体字符+描述+核心——正则表达式是匹配模式,要匹配字符,要匹配位置。组成——修饰符、元字符、量词、特殊符号和特定语言API。基本量词+n++大于等于1个字符
简化用n代表字符+描述+核心——正则表达式是匹配模式,需匹配字符和位置。构成——修饰符、元字符、量词、特殊符号及特定API。基础量词+n至少1个字符
概述本文中用n指代具体字符
-
核心——正则表达式是匹配模式,要么匹配字符,要么匹配位置。
-
组成——修饰符、元字符、量词、特殊符号和特定语言API。
n+ 大于等于1个字符
n* 大于等于0个字符
n? 包含0个或1个字符
n{x} 包含x个字符
n{x,} 包含x个以上字符
n{x,y} 包含x到y个字符
修饰符
g 全局匹配
i 字母大小写不敏感
m 多行匹配
y 粘连匹配
s 拓展点字符(任意字符)
u 处理超范围Unicode字符
元字符
\d\D 数字/非数字
\w\W 字母/非字母
\s\S 空白/非空白
\b\B 单词/非单词边界
\xxx 查找8进制字符
\udd 查找16进制
\数字 反向引用
特殊符号
() 分组
[] 字符组
| 或
?=n/?!n 先行断言
?<=n/><!n 后行断言
^ 匹配开头
$ 匹配结尾
特定语言API
RegExp.prototype.compile // 编译正则表达式。
RegExp.prototype.test // 检索字符串中指定的值。返回 true 或 false。
RegExp.prototype.test // 检索字符串中指定的值。返回找到的值,并确定其位置。
String.prototype.search // 检索与正则表达式相匹配的值。
String.prototype.match // 找到一个或多个正则表达式的匹配。
String.prototype.replace // 替换与正则表达式匹配的子串。
String.prototype.split // 把字符串分割为字符串数组。
应用
位置
开头/结尾:^、$
单词边界:\b、\B
断言/环视:?=n、?!n、?<=n、?<!n
模糊匹配
(量词)横向模糊匹配:n{x,y}、n{x,}、n+、n*、n?
(字符组)纵向模糊匹配:[]、\d、\D、\w、\W、\s、\S
分组/分支/引用
分组:()
分支:|
引用:\数字

