JS正则表达式

简介: JS正则表达式

1.字面量

i 忽略大小写

g 全局匹配

m 多行匹配

var variable_name = /regular experssion/options;

eg:

var myReg = /love/;

var reObj = /san jose/ig;


2.RegExp() 构造函数

格式:

var variable_name = new RegExp(“regular expression”,“options”);

测试正则表达式

regExp()对象包含两个方法test()exec() 功能相似 用于测试字符串的匹配的匹配

exec 在字符串中执行匹配搜索 返回结果数组

test 在字符串中测试模式匹配 返回true 或者false


RegExp对象的属性

input 当前被匹配的字符串

lastmatch 最后一个匹配字符串

lastParen 最后一对圆括号内的匹配子串

leftContext 最后一次匹配前的子串

RegExp.∗ 标 示 是 否 多 行 匹 配 的 布 尔 值 R e g E x p . * 标示是否多行匹配的布尔值 RegExp.∗标示是否多行匹配的布尔值RegExp.& 最后一次匹配的字符

RegExp.输 入 的 执 行 匹 配 的 字 符 串 R e g E x p . _ 输入的执行匹配的字符串 RegExp.

入的执行匹配的字符串RegExp.’ 代表最后一次匹配模式前的子串

RegExp.‘ 代 表 最 后 一 次 匹 配 模 式 后 的 子 串 R e g E x p . ‘ 代表最后一次匹配模式后的子串 RegExp.‘代表最后一次匹配模式后的子串RegExp.+ 代表最后一一对括号内的模式的子串

RegExp.$1,$2,$3 捕获匹配到的字串

rightContext 最近一次匹配的字串


字符串得正则表达式的使用方法

String.match(regExp) 返回regExp 中的子串或null

String.replace(regExp,replacement) 用replacement替换regExp

String.search(regExp) 返回字符串中regExp的开始位置

String.split(regex) 从字符串中删除所有包含regex的子串


正则表达式

/[\t:,]/ 分隔符是制表符 冒号或逗号

[0-9] 表示0-9的数字

\d也表示数字 digit

/^a…c/ 表示以a开头 .表示任意字符 c结尾 形如abbbc a232c adecc等


元字符

字符类:单个字符和数字

.             匹配除换行符外的任意字符

[a-z0-9]      匹配括号中的字符集中的任意字符

[^a-z0-9]     匹配任意不在括号中的字符集中字符  

\d   匹配数字

\D  匹配非数字 同[^0-9]

\w 匹配字母

\W 匹配非字母


字符类:空白字符

\0 匹配null字符

\b 匹配空格字符

\f 匹配进纸字符

\n 匹配换行符

\r 匹配回车字符

\s 匹配空白字符 空格 制表符或换行符

\S 匹配非空白字符

\t 匹配制表符

字符类:错字符

^ 行首匹配

$ 行尾匹配

\A 只匹配字符串开始的地方

\b 匹配单词边界 词在[] 内时无效

\B 匹配非单词边界

\G 匹配当前搜索的开始位置

\Z 匹配字符串结束处或行尾

\z 只匹配字符串结束处


字符类:重复字符

x? 匹配0个或1个x

x* 匹配0个或任意多个x

x+ 匹配至少一个x

(xyz)+ 匹配至少一个xyz模式

x{m,n} 匹配最少m个 最多n个x


字符类:替代字符

was|were|will 匹配was或者were或will


字符类:记录字符

(string) 用于反向引用

\1或$1 匹配第一对括号中的内容

\2或$2 匹配第二对括号中的内容

\3或$3 匹配第三对括号中的内容


分组或聚合

/(ma)/ 或/(John|Joe)Brown/ 匹配JohnBrown JoeBrown

/(ma)+/ 匹配形如ma mama mamama


记录与捕获

将正则表达式模式括在括号里,产生的子模式也可被捕获 子模式存储在特殊编号的类属性中 从$1开始后面是$2


var aa = "AB EF";

var bb = /(\w+)\s(\w+)/;

aa.replace(bb,"$2,$1"); //"EF,AB"


相关文章
|
1月前
|
JavaScript 前端开发
电话号码正则表达式 代码 javascript+html,JS正则表达式判断11位手机号码
电话号码正则表达式 代码 javascript+html,JS正则表达式判断11位手机号码
98 1
|
2月前
|
自然语言处理 JavaScript 前端开发
JavaScript 正则表达式
JavaScript 正则表达式
17 3
|
3月前
|
JavaScript 前端开发
js中通过正则表达式验证邮箱是否合法
这篇文章提供了一个JavaScript示例,通过正则表达式在网页上验证用户输入的邮箱地址是否合法,并给出了相应的提示信息。
js中通过正则表达式验证邮箱是否合法
|
5月前
|
机器学习/深度学习 JavaScript 前端开发
JavaScript中的正则表达式详细展示
JavaScript中的正则表达式详细展示
38 6
|
5月前
|
JavaScript 前端开发 测试技术
JavaScript进阶-正则表达式基础
【6月更文挑战第21天】正则表达式是处理字符串的利器,JavaScript中广泛用于搜索、替换和验证。本文讲解正则基础,如字符匹配、量词和边界匹配,同时也讨论了常见问题和易错点,如大小写忽略、贪婪匹配,提供代码示例和调试建议。通过学习,开发者能更好地理解和运用正则表达式解决文本操作问题。
47 1
|
4月前
|
JavaScript 数据安全/隐私保护
js 常用正则表达式【实用】
js 常用正则表达式【实用】
24 0
|
4月前
|
存储 JavaScript 前端开发
|
5月前
|
XML JavaScript 数据安全/隐私保护
一篇文章讲明白js常用js正则表达式大全
一篇文章讲明白js常用js正则表达式大全
34 0
|
6月前
|
前端开发 JavaScript
前端 js 经典:正则表达式
前端 js 经典:正则表达式
54 2
|
6月前
|
JavaScript 前端开发 测试技术
学会JavaScript正则表达式(二)
学会JavaScript正则表达式(二)