一、正则表达式的定义:用来检索、替换那些符合某个模式(规则)的文本
二、正则表达式的作用:匹配,提取,替换
三、正则表达式的特点:灵活性、逻辑性和功能性非常的强,可以迅速地用极简单的方式达到字符串的复杂控制
常用的
\d 匹配至少有一个数字
\D 匹配至少任意一个非数字的字符
\w 匹配至少一个字母或数字或下划线
\W 匹配至少有一个不是字母,数字,下划线
\s 匹配至少任意的空白符
\S 匹配至少一个不是空白符的字符
. 匹配至少有一个非换行符
^ 表示匹配行首的文本(以谁开始) ^\d
$ 表示匹配行尾的文本(以谁结束)\d$
* 重复零次或更多次\d* /^ab*$/:表示一个字符串有一个a后面跟着零个或若干个b。("a", "ab", "abbb",……);
+ 重复一次或更多次\d+ / ab+/:表示一个字符串有一个a后面跟着至少一个b或者更多;
? 重复零次或一次 /^ab?$/:表示一个字符串有一个a后面跟着零个或者一个b;
{n} 确定的次数,重复n次
{n,} 重复n次或更多次
{n,m} 重复n到m次
[] 字符串用中括号括起来,表示匹配其中的任一字符,相当于或的意思 [0-9]
[^] 匹配除中括号以内的内容
\ 转义符: \的用法 \ 主要是用法是在正则表达式中的特殊符号转换为它本身的意思
| 或者,选择两者中的一个。注意|将左右两边分为两部分,而不管左右两边有多长多乱
() 两个直接量中选择一个,分组
例如:gr(a|e)y匹配gray和grey
[\u4e00-\u9fa5] 匹配汉字
四、创建正则对象
// 1.字面量创建
var reg1 = /\d/;
console.log(reg1);
// 2.构造函数创建
var reg2 = new RegExp(/\d/)
console.log(reg2);
四、正则匹配
语法:regexObj.test(str)
参数:str 用来与正则表达式匹配的字符串
返回值:如果正则表达式与指定的字符串匹配 ,返回true;否则false。
五、正则提取
groups: 一个捕获组数组 或 undefined(如果没有定义命名捕获组)。
index: 匹配的结果的开始位置
input: 搜索的字符串.一个Array,其内容取决于global(g)标志的存在与否,如果未找到匹配则为null。
i 忽略大小写
g 全局匹配
gi 全局匹配+忽略大小写
六、正则替换
String.prototype.replace()
语法:str.replace(regexp|substr, newSubStr|function)
参数:regexp (pattern)
正则替换
七、web存储
1、localStorage 对象存储的数据没有时间限制
(1)保存数据:localStorage.setItem(key,value);
(2)读取数据:localStorage.getItem(key);
(3)删除单个数据:localStorage.removeItem(key);
(4)删除所有数据:localStorage.clear();
(5)得到某个索引的key:localStorage.key(index);
2、sessionStorage 对象
sessionStorage 方法针对一个 session 进行数据存储。当用户关闭浏览器窗口后,数据会被删除。
缓存api案例
js高级及正则表达式
最新推荐文章于 2024-07-19 14:12:54 发布