1

正则表达是的基础

1、正则表达式的介绍

正则表达式为Regular Expression
正则表达式是用来对字符串中的信息实现查找、替换和提取的操作。

2、正则表达式的实践

【查找案例】
//查找所有的数字
var str = "1 dsd  hhs67 89ud d 555 222 sshdsahd880 hhd88 99";
var res = str.match(/\d+/g);
console.log(res);

打印结果
(8) ["1", "67", "89", "555", "222", "880", "88", "99"]
【替换案例】
//替换所有的is为IS
var str1 = "my name is abcd . is no what is you name?"
var res1 = str1.replace(/is/g , "IS");
console.log(res1);
打印结果
my name IS abcd . IS no what IS you name?

3、正则表达式的定义(正则表达式示例的创建)

2种定义方式
1、// 自变量定义
【案例】
//找到匹配abcd的字符
var str = "my name is Abcd . is no what is you name?";
var res = /abcd/i;
console.log(res.test(str));
打印结果为true
2、new RexExp();new一个正则表达式
【案例】
//找到匹配abcd的字符
var str = "my name is Abcd . is no what is you name?";
var res = new RegExp("abcd","i");
console.log(res.test(str));
打印结果为true

4、正则表达式的修饰符(flag)

i----ignore 忽略大小写
g----global 全局全部
m----multiline 多行

5、正则表达式的字符

普通字符
a-z Z-A 0-9
特殊字符
() [] {} ? * + ^ $ |
预定义字符
n d w s t b……

6、元字符[] (元类字符)

代表一类字符
【案例1】
//替换多有的jgf
var str = "aasj jgjgdk ghghr lfjfhd";
var res = str.replace(/[jgf]/g,"WJ");
console.log(res);
打印结果
aasWJ WJWJWJWJdk WJhWJhr lWJWJWJhd
【案例2】
//找到以a开头以c结尾中间是sdf的字符
var str1 = "abc adc asc afc ahc atc adc";
var res = str1.match(/a[sdf]c/g);
console.log(res);
打印结果
(4) ["adc", "asc", "afc", "adc"]

7、量词

{} 用来修饰字符的

8、贪婪模式

贪婪模式是什么,我们怎么解决贪婪模式
正则匹配尽可能给我们匹配跟多的,这就就出现了贪婪模式
我们解决贪婪模式的方式就是反贪婪模式,在其后面加?即可

9、分支 分组和应用

分支用|表示
分组用()表示

10、边界问题 ^$ b

整个字符串边界 ^ $
单词的边界 b B

11、前瞻

【案例】
正向前瞻reg(?=reg1)
//返回91前面的shitu
var str = "shitu 91 nihao!";
var reg = str.match(/shitu (?=91)/g);
console.log(reg);
打印结果["shitu "]
反向前瞻reg(?!reg1)
//找不到任何
var str = "shitu 91 nihao!";
var reg3 = str.match(/shitu (?!91)/g);
console.log(reg3);
打印结果null
//返回shitu 91  忽略分组
var str = "shitu 91 nihao!";
var reg1 = str.match(/shitu (?:91)/);
console.log(reg1);
打印结果
["shitu 91", index: 0, input: "shitu 91 nihao!"]
//返回shitu 91 91
var str = "shitu 91 nihao!";
var reg2 = str.match(/shitu (91)/);
console.log(reg2);
打印结果
(2) ["shitu 91", "91", index: 0, input: "shitu 91 nihao!"]

12、正则对象的属性

iastIndex
flags
global
ignoreCase
multiline
source
喜欢的朋友可以点赞和收藏奥

Besmall
334 声望37 粉丝

下一篇 »
初学Vue

引用和评论

0 条评论