第一种 匹配字符串:
<html>
<body>
<script type="text/javascript">
var str="Hello world!"
document.write(str.match("world") + "<br />")
document.write(str.match("World") + "<br />")
document.write(str.match("worlld") + "<br />")
document.write(str.match("world!"))
</script>
</body>
</html>
结果为:
world
null
null
world!
第二种 匹配正则表达式:
<script type="text/javascript">
var str="if(1,2,3)+if(1,2,3)";
document.write(str.match(/if\([^,]*,[^,]*,[^,]*\)/g));
var d=new RegExp("if\\([^,]*,[^,]*,[^,]*\\)","g");
document.write(str.match(d));
</script>
正则表达式里有涉及到JavaScript RegExp 对象
JavaScript RegExp 对象两种写法:
直接量语法
/pattern/attributes
例如:
str.match(/if\([^,]*,[^,]*,[^,]*\)/g));
**创建 RegExp 对象的语法:
new RegExp(pattern, attributes);**
例如:
var d=new RegExp("if\\([^,]*,[^,]*,[^,]*\\)","g");
两者会有轻微差别。
对于new RegExp 涉及到转译字符,对于(的匹配在,直接写法中用(
而在new RegExp 中,要用\( 用了两个\进行转译
在JavaScript里,用match 经常就会用到
$(str.match).each(function(){
})