网络编程 
首页 > 网络编程 > 浏览文章

javascript中使用正则表达式进行字符串验证示例

(编辑:jimmy 日期: 2024/10/10 浏览:3 次 )
var reg=/正则表达式/;
boolean reg.test(要验证的字符串);
js引擎会将/正则表达式/“”转换成一个RegExp对象,当字符串满足正则表达式的要求事,返回true。
我写的一个表达式验证示例:功能如下:
用户名,不能为空
密码6为数字
密码确认,两次输入密码必须相同
身份证号码必须是15位,或者是18位,最末尾也可以是X(该功能还没有写,有时间再补上)
复制代码 代码如下:
<!DOCTYPE html>
<html>
<head>
<title>testTablel.html</title>
<!-- 用户名,不能为空
密码6为数字
密码确认,两次输入密码必须相同
身份证号码必须是15位,或者是18位,最末尾也可以是X -->
<style>
#d1 {
width: 400px;
height: 250px;
background-color: #FFE4B5;
margin: 40px auto;
}
#d1_head {
color: white;
font-size: 20px;
font-family: "Arial";
height: 24px;
background-color: bule;
}
#d1_content {
padding-left: 30px;
padding-top: 30px;
}
.s1 {
color: red;
font-style: italic;
}
.s2 {
border: 2px dotted blue;
}
</style>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<script>
function check_username(){
var txtObj=document.getElementById("username");
txtObj.className='';
var msgObj=docuemnt.getElementById("username_msg");
msgObj.innerHTML='';
if(txtObj.value.length==0){
msgObj.innerHTML='用户名不能为空';
//给节点的class属性赋值
txtObj.className='s2';
return false;
}
return true;
}
function check_pwd(){
var pwdObj=document.getElementById("pwd");
pwdObj.classNames='';
var msgObj=document.getElementById("pwd_msg");
msgObj.innerHTML='';
var reg=/^\d{6}$/;
//javascript中一个test方法,返回boolean
if(!reg.test(pwdObj.value)){
msgObj.innerHTML='密码是6位数';
pwdObj.className='s2';
return false;
}
return true;
}
function check_pwd1(){
var pwdObj=document.getElementById("pwd");
// pwdObj.classNames='';
// var msgObj=document.getElementById("pwd_msg");
// msgObj.innerHTML='';
var pwdObj1=document.getElementById("pwd1");
//pwdObj1.classNames='';
var msgObj1=document.getElementById("pwd_msg1");
msgObj1.innerHTML='';
if(pwdObj.value!=pwdObj1.value){
msgObj1.innerHTML='密码不一致,请重新输入';
return false;
}
return true;
}
function check_form(){
var flag=check_username()&&check_pwd()&&check_pwd1;
return flag;
}
</script>
</head>
<body>
<div id="d1">
<div id="d1_head">注册</div>
<div id="d1_content">
<form onsubmit="return check_form();">
<table>
<tr>
<td>用户名</td>
<td><input id="username" name="username"
onblur="check_username();" /> <span class="s1" id="username_msg"></span>
</td>
</tr>
<tr>
<td>密码</td>
<td><input type="password" id="pwd" name="pwd"
onblur="check_pwd();" /> <span class="s1" id="pwd_msg"></span></td>
</tr>
<tr>
<td>确认密码</td>
<td><input type="password" id="pwd1" name="pwd1"
onblur="check_pwd1();" /> <span class="s1" id="pwd_msg1"></span>
<tr>
<td colspan="2">
<input type="submit" value="确认" /> <input type="reset"
value="重置" />
</td>
</tr></table>
</form>
</div>
</div>
</body>
</html>
上一篇:如何使用JavaScript和正则表达式进行数据验证
下一篇:php匹配网址的正则 几乎可以匹配任何网址
一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。