对于利用js正则表达式验证手机号、email地址、邮政编码,可以按照以下步骤进行:
一、编写正则表达式
验证手机号
手机号码一般为11位数字组成,以1开头,比较简单,可以使用以下正则表达式进行匹配:
/^1[3456789]\d{9}$/
该表达式的解释:
^
为开始符号,表示匹配输入的开始1
为手机号码开头的数字,即必须以1开头[3456789]
表示下一位数字的范围,即只能为3、4、5、6、7、8、9中的一个\d
表示任意数字{9}
表示数字出现的次数,即必须连续出现9次$
为结束符号,表示匹配输入的结束
验证email地址
验证email地址比较复杂,建议使用综合一些常见邮箱的规则,可以使用以下正则表达式:
/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+$/
该表达式的解释:
^
为开始符号,表示匹配输入的开始[a-zA-Z0-9_-]+
表示匹配字母、数字、下划线和横线,且至少出现一次@
表示必须包含一个@符号[a-zA-Z0-9_-]+\.
表示匹配字母、数字、下划线和横线,加上一个句点,且至少出现一次[a-zA-Z0-9_-]+
表示匹配字母、数字、下划线和横线,且至少出现一次$
为结束符号,表示匹配输入的结束
验证邮政编码
邮政编码一般为6位数字组成,比较简单,可以使用以下正则表达式进行匹配:
/^[1-9]\d{5}$/
该表达式的解释:
^
为开始符号,表示匹配输入的开始[1-9]
表示邮政编码开头的数字,不能为0\d
表示任意数字{5}
表示数字出现的次数,即必须连续出现5次$
为结束符号,表示匹配输入的结束
二、使用正则表达式验证输入
一般来说,可以在表单提交或者输入失去焦点时对输入进行验证,并给出相应的提示。可以参考以下示例代码:
验证手机号
<label for="phone">手机号码:</label>
<input type="text" id="phone" onchange="checkPhone()" />
<script>
function checkPhone() {
var phone = document.getElementById('phone').value;
var reg = /^1[3456789]\d{9}$/;
if (!reg.test(phone)) {
alert('请输入正确的手机号码');
}
}
</script>
该代码中,输入框失去焦点时会触发checkPhone()
函数,对输入的手机号码进行验证。如果不符合正则表达式的条件,则弹出提示框。
验证email地址
<label for="email">邮箱地址:</label>
<input type="text" id="email" onchange="checkEmail()" />
<script>
function checkEmail() {
var email = document.getElementById('email').value;
var reg = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+\.[a-zA-Z0-9_-]+$/;
if (!reg.test(email)) {
alert('请输入正确的邮箱地址');
}
}
</script>
该代码中,输入框失去焦点时会触发checkEmail()
函数,对输入的email地址进行验证。如果不符合正则表达式的条件,则弹出提示框。
验证邮政编码
<label for="postcode">邮政编码:</label>
<input type="text" id="postcode" onchange="checkPostcode()" />
<script>
function checkPostcode() {
var postcode = document.getElementById('postcode').value;
var reg = /^[1-9]\d{5}$/;
if (!reg.test(postcode)) {
alert('请输入正确的邮政编码');
}
}
</script>
该代码中,输入框失去焦点时会触发checkPostcode()
函数,对输入的邮政编码进行验证。如果不符合正则表达式的条件,则弹出提示框。
以上就是利用js正则表达式验证手机号、email地址、邮政编码的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:利用js正则表达式验证手机号,email地址,邮政编码 - Python技术站