正则表达式05
var str = /^[a-z]+\s[0-9]{4}/; 弹出数组 google 2015
var str2 = "google 2015";
alert(str.exec(str2));
var str = /^[a-z]+/; 弹出数组 google
var str2 = "google 2015";
alert(str.exec(str2));
var str = /^([a-z]+)\s([0-9]{4})/; 使用了分组 标志:加括号(捕获型分组)
var str2 = "google 2015";
var a = str.exec(str2);
alert(a[0]); 返回全部
alert(a[1]); 返回第一个
alert(a[2]); 返回第二个
var str = /^([a-z]+)\s(?:[0-9]{4})/; 使用了分组 标志:加括号 加问号 冒号(非捕获型分组)
var str2 = "google 2015";
alert(str.exec(str2)); 使用了 ?: 就表示 非捕获型分组,不会捕获这后面的
var str = /(a?(b?(c?)))/; 嵌套分组
var str2 = "abc";
var a = alert(str.exec(str2));
var a = str.exec(str2);
alert(a[0]); 匹配整个
alert(a[1]); 从外向内匹配 abc
alert(a[2]); 从外向内匹配 bc
alert(a[3]); 从外向内匹配 c
var str = /goo(?=gle)/; 后面必须是 gle 才能够 返回 goo
var str2 = "goobbb"; 前瞻性捕获
alert(str.exec(str2));
var str = /\^/; 由于^符号在正则里面是特殊字符,所以需要使用\ 转义
var str2 = "^";
alert(str.exec(str2));
var str = /^\d/gm; 此处使用了\n 模拟了换行,且是^首匹配,所以只有同时开启全局和换行才能全部替换数字
var str2 = "1.baidu\n2.google\n3.bing";
alert(str2.replace(str,"#"));