ASP中Regex的應用(一)
來源:互聯網
上載者:User
Regex的應用
怎麼實現資料記錄的分頁顯示
Regex的應用(作者:tommy)
一、Regex概述
二、Regex在VBScript中的應用
三、Regex在VavaScript中的應用
四、樣本
五、總結
一、Regex概述
如果原來沒有使用過Regex,那麼可能對這個術語和概念會不太熟悉。不過,它們並不是您想象的那麼新奇。
請回想一下在硬碟上是如何尋找檔案的。您肯定會使用 ? 和 * 字元來協助尋找您正尋找的檔案。? 字元匹配檔案名稱中的單個字元,而 * 則匹配一個或多個字元。一個如 'data?.dat' 的模式可以找到下述檔案:data1.dat、data2.dat等等。如果使用 * 字元代替 ? 字元,則將擴大找到的檔案數量。'data*.dat' 可以匹配下述所有檔案名稱:data.dat、data1.dat、data12.dat等等,儘管這種搜尋檔案的方法肯定很有用,但也十分有限。? 和 * 萬用字元的有限能力可以使你對Regex能做什麼有一個概念,不過Regex的功能更強大,也更靈活。
在我們編寫ASP程式時,經常會判斷一個字串的有效性,如;一個串是否是數字、是否是有效Email地址等等。如果不使用Regex,那麼判斷的程式會很長,並且容易出錯,如果使用Regex,這些判斷就是一件很輕鬆的工作了。後面我們將介紹如何判斷數字和Email地址的有效性。
在典型的搜尋和替換操作中,必須提供要尋找的確切文字。這種技術對於靜態文本中的簡單搜尋和替換任務可能足夠了,但是由於它缺乏靈活性,因此在搜尋動態文本時就有困難了,甚至是不可能的。
使用Regex,能完成些什麼事情呢?
測試字串的某個模式。例如,可以對一個輸入字串進行測試,看在該字串是否存在一個電話號碼模式或一個信用卡號碼模式。這稱為資料有效性驗證。
替換文本。可以在文檔中使用一個Regex來標識特定文字,然後可以全部將其刪除,或者替換為別的文字。
根據模式比對從字串中提取一個子字串。可以用來在文本或輸入欄位中尋找特定文字。
例如,如果需要搜尋整個 web 網站來刪除某些過時的材料並替換某些HTML 格式化標記,則可以使用Regex對每個檔案進行測試,看在該檔案中是否存在所要尋找的材料或 HTML 格式化標記。用這個方法,就可以將受影響的檔案範圍縮小到包含要刪除或更改的材料的那些檔案。然後可以使用Regex來刪除過時的材料,最後,可以再次使用Regex來尋找並替換那些需要替換的標記。