正则表达式的方法:
1.正则.exec(要验证字符串);
返回一个数组,第一个匹配的值,index出现位置,input验证字符串
2.正则.test(要验证字符串);
验证成功返回true,失败返回false
实例:验证手机号
js部分:
<script>
var numTest = function(type,str){
var result = {state:false,msg:''};
if(type == 'phone'){//验证手机号
var Re = /\D+/g;//是否有非数字
var Re1 = /^1[\d]{10}$/;//11位数字,1开头
if(Re.test(str)){
result.msg = '手机号必须是数字';
}else if(!Re1.test(str)){
result.msg = '格式错误';
}else {
result.state = true;
result.msg = '验证成功';
}
}
return result;
};
window.onload = function(){
var button = document.getElementById('check');
button.onclick = function(){
var telphone = document.getElementById('phone').value;
if(numTest('phone',telphone).state){
//验证成功,提交数据
}else{
alert(numTest('phone',telphone).msg);
}
};
}
</script>
html部分:
<form action="">
<input id="phone" type="text" placeholder="填写手机号">
<div id="check">检查手机号是否正确</div>
</form>
输入非数字提示手机号必须是数字:
输入不足11位,提示格式错误:
输入正确手机号码:
3.要验证字符串.search(正则);
验证成功返回位置,失败返回-1
4.要验证字符串.match(正则);
全局匹配返回数组,非全局匹配返回数组,第一个值,index出现位置,input验证字符串
5.要验证字符串.replay(正则,用什么替换);
返回一个新的字符串
实例:用p替换span标签
js部分:全局匹配span用p来代替
var wrap = document.getElementById('wrap');
var html = wrap.innerHTML;
html = html.replace(/span/g,'p');
wrap.innerHTML = html;
html部分
<div id="wrap">
<h5>这里是标题</h5>
<span>这里是内容</span>
</div>
可以看到span变成p了