如何生成正则表达式
1.字面量生成
let reg = /a/g
2.new 关键字
new RegExp('模式','修饰符')
修饰符
正则表达式-修饰符
正则的方法
String对象支持四种利用正则表达式的方法,分别为search(),replace(),match(),split()
1.search() 以正则表达式作为参数;返回第一个与之相配的字符串开始的位置,如果没有则返回-1;
var str = "jfkdasjf";
var patt = /a/g;
var res = str.search(patt);
console.log(res);//4
2.replace() 执行检索和替换;第一个参数是一个正则表达式,第二个参数是要替换为的字符串或者闭包;
//把a替换成&;
var str = "jfkdasjf";
var patt = /a/g;
var res = str.replace(patt,"&");
console.log(res)
3.match() 唯一的一个参数,是正则表达式;如果匹配正则表达式,则返回一个数组;如果不匹配则返回null;
var str = "1a1b1c";
var patt = /[1.]/;
alert(str.match(patt )); //1a
4.split()方法是能够支持模式匹配的。
正则的实例api
1.test
let str = 'a1901'
let reg = /^a/
reg.test(str)
返回ture 和 fasle
2、exec
var reg = /a/g
var str = 'a1901a'
reg.exec(str)//['a',0]
reg.exec(str)//['a',5]
reg.exec(str)//null
正则表达式元字符
元字符
正则的贪婪模式和非贪婪模式
贪婪模式:正则默认尽可能多的去匹配符合的字符
非贪婪模式:(模式?)
去尽可能少的匹配模式的字符
特殊的匹配
特殊匹配