正则表达式的概念
- 正则表达式,又名 “规则表达式”
- 由我们自己来书写 “规则”,专门用来检测 字符串 是否符合 “规则” 使用的
- 我们使用一些特殊的字符或者符号定义一个 “规则公式”,然后用我们定义好的 “规则公式” 去检测字符串是不是合格
正则表达式(regular expression)是一个描述字符模式的对象。ECMAScript 的 RegExp 类 表示正则表达式,而 String 和 正则表达式都定义了进行强大的【模式匹配】和【文本检索】与【替换】的函数。
正则表达式的创建方式
//正则的声明
1、通过new声明
2、省略new声明
3、通过正则常量赋值
第一个参数:正则主体部分
第二个参数:修饰符
i 忽略大小写
g 全局匹配
m 换行匹配
var box1 = new RegExp("hello", "ig");
console.log(box1);
var box2 = RegExp("hello", "ig");
console.log(box2);
var box3 = /hello/gi;
console.log(box3);
正则的方法
test()
格式:正则.test(字符串)<br /> 功能:在字符串中匹配这个正则是否存在,如果存在,返回true,否则,返回false
exec() 用的不多
格式:正则.exec(字符串)<br /> 功能:在字符串中匹配这个正则是否存在,如果存在,返回数组,否则返回null.
var str = "how aRe you";
var box = /are/;
console.log(box.test(str));//text
console.log(box.exec(str));//exec
字符串中可以使用正则的方法
match
格式:字符串.match(正则);<br /> 功能:在字符串中匹配正则是否存在<br /> 返回值:如果存在,返回匹配到的字符串组成的数组<br /> 否则,返回null
var str = "how are Are ARE you";
var box = /arex/gi;
console.log(str.match(box));
replace
格式:字符串.replace(oldStr, newStr);<br /> 功能:用newStr,将oldStr替换掉,返回替换成功以后的新字符串。
var str = "how are Are ARE you";
var box = /are/gi;
console.log(str.replace(box, "xxx"));
search
格式:字符串.search(正则);<br /> 功能:用正则在字符串中进行查找,查找这个正则第一次出现的位置<br /> 返回值:-1,没有查找到
```javascript
var str = "how Are are ARE you";
var box = /are/i;
console.log(str.search(box));
- split()
格式:字符串.split(正则);<br /> 功能:使用正则对字符串进行分割<br /> 返回值:分割完成的子串,存成的数组。
```javascript
var str = "how dadAre dadaare dadaARE you";
var arr = str.split(/are/i);
console.log(arr);