js正则表达式

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>正则表达式</title>
	</head>
	<body>
		
		<script>
		
		// 正则表达式作为一个对象,过滤敏感关键词 用于匹配字符中字符组合的模式
		// 1-创建正则表达式  
		// 00对象RegExp
		var regexp=new RegExp(/abc/);  //只要包含abc的都可以返回true
		console.log(regexp);
		
		// 01字面量创建
		var r=/abc/;
		// 2-测试正则表达式regexp.test(str) 返回true和false
	    console.log(r.test(123));  //false
	    console.log(r.test('abc')); //true
		console.log(r.test('abccc')); //true
		console.log("-------------");
		
		// 3-正则表达式的特殊字符  
		// 00边界符 ^开头 $结尾
		var r2=/^abc/;  //以abc开头都可以返回true
		console.log(r2.test('aabc'));  //false
		console.log(r2.test('abccc')); //true
		console.log(r2.test('abcd')); //true
		console.log("-------------");
		var r3=/^abc$/;  //以abc开头和结尾返回true 精确匹配
		console.log(r3.test('aabc'));  //false
		console.log(r3.test('abccc')); //false
		console.log(r3.test('abcd')); //false
		console.log(r3.test('abc')); //true
		console.log("-------------");
		
		// 01字符类[] 只包含[]里面其中一个字符就可以
		var r4=/[abc_]/;  //只要包含abc中的其中一个
		console.log(r4.test('a'));  //true
		console.log(r4.test('b')); //true
		console.log(r4.test('1')); //false
		console.log(r4.test('abc')); //true
		console.log(r4.test('_')); //true
		console.log("-------------");
		var r5=/^[abc]$/;  //以a或者b或者c开头并结尾,选其中一个
		console.log(r5.test('a'));  //true
		console.log(r5.test('b')); //true
		console.log(r5.test('c')); //true
		console.log(r5.test('abc')); //false
		console.log("-------------");
		var r6=/^[a-z]$/;  //以a到z英文小写这个字符开头并结尾,选其中一个
		console.log(r6.test('a'));  //true
		console.log(r6.test('z')); //true
		console.log(r6.test('g')); //true
		console.log(r6.test('gg')); //false
		console.log("-------------");
		var r6=/^[a-zA-Z]$/;  //以a到z A-Z英文开头并结尾,选其中一个 
		console.log(r6.test('a'));  //true
		console.log(r6.test('A')); //true
		console.log(r6.test('G')); //true
		console.log(r6.test('1')); //false
		console.log("-------------");
		var r7=/^[^a-zA-Z]$/;  //中括号里面^是取反的意思,不能去里面
		console.log(r7.test('a'));  //false
		console.log(r7.test('A')); //false
		console.log(r7.test('G')); //false
		console.log(r7.test('1')); //true
		console.log("-------------");
		
		// 02量词符  注意{}里面中间不能有空格
		// *重复0次或更多次  
		var r8=/^[a-zA-Z]*$/;  
		console.log(r8.test('a'));  //true
		console.log(r8.test('AA')); //true
		console.log(r8.test('G')); //true
		console.log(r8.test('1')); //false
		console.log("-------------");
		// +重复1次或更多次
		var r9=/^[a-zA-Z]+$/;
		console.log(r9.test('a'));  //true
		console.log(r9.test('AA')); //true
		console.log(r9.test('G')); //true
		console.log(r9.test('1')); //false
		console.log("-------------");
		// ?重复0次或1次
		var r10=/^[a-zA-Z]?$/;  
		console.log(r10.test('a'));  //true
		console.log(r10.test('AA')); //false
		console.log(r10.test('G')); //true
		console.log(r10.test('1')); //false
		console.log("-------------");
		// {n}重复n次
		var r11=/^[a-zA-Z]{2}$/;
		console.log(r11.test('a'));  //false
		console.log(r11.test('AA')); //true
		console.log(r11.test('G')); //false
		console.log(r11.test('1')); //false
		console.log("-------------");
		// {n,}重复n次或更多次
		var r12=/^[a-zA-Z]{2,}$/;
		console.log(r12.test('a'));  //false
		console.log(r12.test('AA')); //true
		console.log(r12.test('Gdfd')); //true
		console.log(r12.test('1')); //false
		console.log("-------------");
		// {n,m}重复n次到m次
		var r13=/^[a-zA-Z]{2,4}$/;
		console.log(r13.test('a'));  //false
		console.log(r13.test('AA')); //true
		console.log(r13.test('Gfd')); //true
		console.log(r13.test('tttt')); //true
		console.log(r13.test('ttttff')); //false
		console.log("-------------");
		
		// 4-正则表达式的替换
		var str='red和green';
		// 以前
		let newStr=str.replace("red","orange"); //部分替换
		console.log("替换后的str:")
		console.log(newStr);
		// 正则表达式替换  全局匹配 / /g   忽略带小写  / /i
		let newStr1=str.replace(/e/g,"*");  //将所有e替换成*
		console.log(newStr1);
		
		</script>
	</body>
</html>

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值