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;
}