正则表达式中的转义符

今天要接触到的几个转义符如下:
1、首先0-9,a-z,A-z,都要用中括号[],来表示,
var num1=/[0-9]/;
var reg1=00879;
alert(num1.test(reg1));
返回true;因为00879均在0-9的数字范围之内,同理/[a-z]/、/[A-Z]/,如果把它们写在一起的话,就是/[0-9a-zA-Z]/,若不匹配则返回false。
2、[]表示除了括号内的字符,如果/[0-9]/,如果num2.test(reg2);reg2是mmAS,则匹配为true,否则为false。
3、\d表示匹配数字
比如var num3=/\d/;
var reg3=99768;
alert(num3.test(reg3));
返回ture;如果里面是aaz的话则返回false;
4、\D表示匹配非数字
同理里面是数字例如:0012返回false,否则返回true。
5、\w表示匹配数字、字母、下划线
6、\W表示匹配非数字、字母、下划线例如
var num6=/\W/;
var reg6=%;
alert(num6.test(reg6));返回true;%不在数字、字母、下划线的范围之内
7、\s表示匹配空格,例如:
var num7=/\s/;
var reg7=" “;
alert(num7.test(reg7));返回true;
8、\S表示匹配非空格
9、\b表示匹配左右是否有字符
var num9=/\bnn/;
var reg9=” nn";
alert(num9.test(reg9));
返回true;\b在左边,表示左边有字符,若没有则返回false;
10、.表示匹配换行符,如果var reg10="\n";则匹配为true;否则为false;
11、\表示转义符,表示匹配“非”的意思,例如:
var num11=/\0-9a-z/;
var reg11=“SS”;
alert(num11.test(reg11));则返回true;

写一段代码,看一下该如何验证密码是否正确

<form action="firstpage.html">
密码:<input type="text" id="password"/>
<span style="color:red;font-size:10px;display:none;">你的密码中未包含数字、大小写字母以及下划线中的一种或几种</span>
<button type="button">登录</button>
</form>
function login(){
	var password1=document.getElementById("password");
	var message1=document.getElementByTagsName("span");
	var num1=/\w/;
	var reg1=password1.value;
	if(num1.test(reg1)==1){
		return true;
	}else{
		message1.style.display="block";
		
	}
}

或者可以尝试着这样写:

<form action="firstpage.html">
密码:<input type="text" id="password"/>
<span style="color:red;font-size:10px;></span>
<button type="button">登录</button>
</form>
function login(){
	var password1=document.getElementById("password");
	var message1=document.getElementByTagsName("span");
	var num1=/[0-9a-zA-Z_]/;
	var reg1=password1.value;
	if(num1.test(reg1)==1){
		return true;
	}else{
		switch(num1.exec(reg1)){
			case [a-zA-Z_]:
			message1.innerHTML="未包含数字!"
			break;
			case [0-9A-Z_]:
			message1.innerHTML="未包含小写字母!"
			break;
			case [0-9a-z_]:
			message1.innerHTML="未包含大写字母!"
			break;
			default:
			message1.innerHTML="未包含下划线!"
		}
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值