JavaScript 正则表达式
正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。
搜索模式可用于文本搜索和文本替换。
什么是正则表达式?
正则表达式是由一个字符序列形成的搜索模式。
当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。
正则表达式可以是一个简单的字符,或一个更复杂的模式。
正则表达式可用于所有文本搜索和文本替换的操作。
语法
/正则表达式主体/修饰符(可选)
其中修饰符是可选的。
实例:
var patt = /runoob/i
演示:判断邮箱
function check_email(obj) {
/*正则表达式:判断是否是一个邮箱*/
var email = obj.value;
var reg = /^([a-zA-Z]|[0-9])(\w|\-)+@[a-zA-Z0-9]+\.([a-zA-Z]{2,4})$/;
if(!reg.test(email)){
document.getElementById("tip").innerText = "错误";
}else{
document.getElementById("tip").innerText = "";
}
}
<form>
<table>
<tr>
<td>邮箱:</td>
<td><input id="email" name="email" type="text" onchange="check_email(this)"/></td>
</tr>
<tr>
<td colspan="2">
<label id="tip"></label>
</td>
</tr>
<tr>
<td colspan="2"><button>提交</button></td>
</tr>
</table>
</form>
演示:电话号码
function check_phone(obj) {
/*正则表达式:判断是否是一个邮箱*/
var email = obj.value;
var reg = /^([1])([0-9]{10})$/;
if(!reg.test(email)){
document.getElementById("email").className = "email_input_error";
}else{
}
}
<form>
<table>
<tr>
<td>邮箱:</td>
<td><input id="email" name="email" type="text" onchange="check_phone(this)"/></td>
</tr>
<tr>
<td colspan="2"><button>提交</button></td>
</tr>
</table>
</form>
.email_input_error{
border-color: red;
border-width: medium;
}