javascript正则表达式基本用法
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
<script type="text/javascript">
window.onload = function(){
//RegExp的初始化,g是指全局,i是忽略大小写
var reg = new RegExp("cat","gi");
var exp = /cat/gi;
//RegExp的test()方法,返回值是true or false
alert(reg.test("cat")); //true
alert(exp.test("cats")); //true
//String的match()方法,返回一个数组,包含符合条件的每个子串
//每找到符合条件的一个子串,就从子串后面开始再继续找
var str = "ssbat ,cat ,hat ,sat, df,ttAt";
var reg = /\w{1,2}t/gi; //最好使用g,不然返回第一个
var arrayList = str.match(reg);
for(var i=0;i<arrayList.length;i++){
alert(arrayList[i]);
}
//String的search()方法,返回第一次出现匹配条件的地方.
var reg = /\w{1,2}t/i;
var i = str.search(reg);
alert(i);
//String的replace()方法,返回替待的结果
var reg = /\w{1,2}t/gi; //如果指定g,就全部替换了,相当于java当中的replaceAll()
alert(str.replace(reg,"langhua"));
alert(str.replace(reg,function(){
return "xiaolanghua";
}));
//String的split()方法;
var strings = "red,langhua,bule,eye,java";
var reg = /\,/;
var arraylists = strings.split(reg); //or split(",");
for(var i=0 ; i<arraylists.length ; i++){
alert(arraylists[i]);
}
}
</script>
\s:用于匹配单个空格符,包括tab键和换行符;
\S:用于匹配除单个空格符之外的所有字符;
\d:用于匹配从0到9的数字;
\w:用于匹配字母,数字或下划线字符;
\W:用于匹配所有与\w不匹配的字符;
. :用于匹配除换行符之外的所有字符。
“^”定位符规定匹配模式必须出现在目标字符串的开头
“$”定位符规定匹配模式必须出现在目标对象的结尾
“\b”定位符规定匹配模式必须出现在目标字符串的开头或结尾的两个边界之一
“\B”定位符则规定匹配对象必须位于目标字符串的开头和结尾两个边界之内,
即匹配对象既不能作为目标字符串的开头,也不能作为目标字符串的结尾。
/[A-Z]/ 上述正则表达式将会与从A到Z范围内任何一个大写字母相匹配。
/[a-z]/ 上述正则表达式将会与从a到z范围内任何一个小写字母相匹配。
/[0-9]/ 上述正则表达式将会与从0到9范围内任何一个数字相匹配。
/([a-z][A-Z][0-9])+/ 上述正则表达式将会与任何由字母和数字组成的字符串,如 “aB0” 等相匹配
正则表达式操作符的优先级顺序
特殊字符匹配时首先将其字符转义(也就是在前面使用一个反斜杠\)