正則表達式是一種模式匹配的工具,它允許您以文字方式來表述模式,因而正則表達式成為了一個驗證文本數據的強大工具。除了模式匹配之外,正則表達式還可以用於文字替換。
在javascript裡面,我們可以用最容易理解的方式去驗證,document.form.input.value就可以得到表單的值,form是表單的name屬性,input是input的name屬性。通過這個值可以判斷規則。用正則表達式,也是可以用這種方式得到值,不過規則不一樣。在javascipt裡的正則表達式,是借鑒了perl語言的規則。Perl語言是公認的正則表達式,最完善的語言。因為都是腳本語言也容易借鑒。下面舉個例子:
<html><head>
<title>正則表達式驗證郵政編碼</title>
</head><body>
<script language="javascript">
function yanzheng() {
testRegExp = /^\d{6}$/; //匹配六位數字
strzip = document.form1.zip.value; //得到表單的值
if(testRegExp.test(strzip)) {
alert(strzip+"符合郵政編碼的格式");
} else {
alert(strzip+"不符合郵政編碼的格式");
}}
</script>
<form name="form1">
<p>
郵政編碼:<input name="zip" />
</p>
<p>郵政編碼應該是6位數字</p>
<button onClick="yanzheng()">驗證</button>
</form>
</body></html>
正則表達式的規則詳情查看正則表達式的入門教程。通過上面的例子可以看出,我們采用這種方式來驗證輸入的正確與否的方便之處。如果通過邏輯去寫匹配6位數字那可怎麼寫啊,是不是得寫一大堆邏輯,長度必需等於6,還必需是數字。如果要是再驗證更復雜的,像是電子郵件,電話號碼,IP地址的話。驗證的邏輯就得寫上大半天。正則表達式也是文本操作中的重要的環節。大家在實踐中會深入體會它的無窮魅力。