JavaScript exec(),match()和searh()方法

exec()方法 ,用于检索字符串中的正则表达式的匹配;
循环中反复调用exec()方法是唯一一种获得全局模式的完整模式匹配信息的方法。
例子:
<span style="white-space:pre">	</span><script type="text/javascript">
		var str = "Visit W3School"; 
		var patt = new RegExp("W3School","g");
		var result;
		while ((result = patt.exec(str)) != null) {
			document.write(result);
			document.write("<br />");
			document.write(patt.lastIndex);
		}
	</script>

输出:

W3School

14


search()方法,用于检索字符串中指定的子字符串,或检索与正则表达式相匹配的子字符串。
search() 方法不执行全局匹配,它将忽略标志 g。它同时忽略 regexp 的 lastIndex 属性,并且总是从字符串的开始进行检索,这意味着它总是返回 stringObject 的 第一个匹配的位置。
例子:
<span style="white-space:pre">	</span><script type="text/javascript">
		var str="Visit W3School!"
		document.write(str.search(/W3School/))
	</script>

输出:
6

match()方法,可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。该方法类似 indexOf() 和 lastIndexOf(),但是它返回指定的值,而不是字符串的位置。
match() 方法可在字符串内检索指定的值,或找到一个或多个正则表达式的匹配。该方法类似indexOf() lastIndexOf(),但是它返回指定的值,而不是字符串的位置。 注意:在全局检索模式下,match() 即不提供与子表达式匹配的文本的信息,也不声明每个匹配子串的位置。如果您需要这些全局检索的信息,可以使用 exec()方法。
例子:
<span style="white-space:pre">	</span><script type="text/javascript">
		var str="1 plus 2 equal 3"
		document.write(str.match(/\d+/g))
	</script>

输出:
1,2,3

test()方法,用于检测一个字符串是否匹配某个模式。如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false。
例子:
<span style="white-space:pre">	</span><script type="text/javascript">
		var str = "Visit W3School";
		var patt1 = new RegExp("W3School");
		var result = patt1.test(str);
		document.write("Result: " + result);
	</script>

输出:
Result: true

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值