久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

如何使用JavaScript和正則表達式進行數據驗證

數據驗證是網絡應用軟件從客戶端接受數據的重要步驟,畢竟,您需要在使用客戶數據前確保其符合預期的格式。在網絡應用程序中,您可以選擇使用特定平臺的工具,比如ASP.NET、JSP等等,或者您可以利用客戶端JavaScript的優勢,JavaScript中的正則表達式可以簡化數據驗證的工作。

正則表達式
正則表達式是一種模式匹配的工具,它允許您以文字方式來表述模式,因而正則表達式成為了一個驗證文本數據的強大工具。除了模式匹配之外,正則表達式還可以用于文字替換。從我在UNIX系統上使用Perl時第一次接觸到正則表達式開始,對正則表達式的支持就一直在不斷延伸。
注意:如果您身邊有很多其他的開發者,正則表達式可能會被稱作RegEx或者RegExp。盡管正則表達式的功能強大,不過其語法有點“神秘”,需要花一些時間來掌握,下面就讓我們來看看使用正則表達式的一些基礎知識。

基本語法
正則表達式的語法可以應用得很復雜,甚至需要一整本書來講解這個題目,但是我將講解其中一部分基本知識來幫助您獲取正則表達式的初步認識。
一個基本概念是錨(anchor),它允許您指定字符串的起點和終點,脫字符(^)用于指定字符串的起點而美元符號($)則表示終點。如果需要在查詢字符串中含有脫字符或者美元符號,您可以使用轉義序列來實現,轉義字符()是優先于脫字符或者美元符號之處理的。以下的例子會在單詞search在字符串中出現時進行匹配。

^search$
而且,您還可以查找一組字符,只要將它們放在方括號中就行了,比如[ and ],相匹配的字符必需屬于這個字符組,一個例子是在[12345]的范圍內尋找匹配的數字1到5,該正則表達式也可以寫作[1-5]。
很多時候您可能需要指定可以出現多次的字符,或者可選的字符,問號(?)的意思是該字符是可選的,加號(+)的意思是該字符可以出現一次或者多次,星號(*)的意思是該字符可以不出現或者出現多次。
現在讓我們來看看如何將這些簡單的正則表達式應用到JavaScript上。

JavaScript支持
JavaScript在1.2版本中添加了對正則表達式的支持,瀏覽器的支持則開始于Internet Explorer 4和Netscape 4,所有的Firefox 版本以及大多數現代瀏覽器都包含了JavaScript的支持。正則表達式可以通過JavaScript的字符串和RegExp來使用。

使用字符串
每個JavaScript字符串都可以通過三種方法來支持正則表達式,這三種方法是match()、replace()和search(),而且對象的test() 方法還允許您進行測試。以下是關于match()、replace()和search()方法的信息:
match(): 用于正則表達式匹配,如果多個匹配出現,則返回一個含有所有匹配結果的數組,數組中的每一個條目都是一份包含了匹配數據的拷貝;如果沒有匹配值,則返回空值。

replace(): 用于正則表達式匹配并將所有的匹配值替換為新的子字符串,本方法的第一個參數是正則表達式,第二個參數是進行替換的字符串。

search(): 用于在正則表達式與指定字符串之間搜索匹配值,如果出現匹配值,則返回字符串的索引值,如果沒有匹配值,則返回-1。

JavaScript 還提供了RegExp對象來創建并使用正則表達式。

RegExp
RegExp對象包含了正則表達式的模式,該對象的方法和屬性可以用來匹配字符串,有兩種方法可以用來創建RegExp對象的實例:使用構造函數或使用正則表達式文本模式的文字方式,第二個參數是可選的,該參數可以指定該搜索是全局的(g)、忽略大小寫的(i)或者全局同時忽略大小寫(gi)。以下的例子是使用構造函數創建RegExp對象的方法,在這個例子中,搜索對象的大小寫是被忽略的:

復制代碼 代碼如下:
testRegExp = new RegExp(“^search$”,”I”)

您可以使用文字方式來創建相同的實例(在斜杠中的部分),如下所示:

復制代碼 代碼如下:
testRegExp = /^search$/i

RegExp對象包含了大量的方法,但我們只介紹其中的一個方法test。該方法將對指定字符串進行正則表達式匹配,如果成功則返回true,失敗則返回false,該方法可以應用在文字字符串或者字符串變量上,基本上,它允許您對一個字符串進行正則表達式匹配,以下的例子演示了如何使用這個方法:

復制代碼 代碼如下:
testRegExp = /search/i;
if (testRegExp.test(“this is a search string”) {
document.write(“The string was found.”);
} else {
document.write(“No match found.”);
}
We can place it in a Web page to test:
<html><head>
<title>RegExp test</title>
</head><body>
<script language=”javascript”>
testRegExp = /search/i;
if (testRegExp.test(“this is a search string”)) {
alert(“The string was found.”);
} else {
alert(“No match found.”);
}
</script></body></html>

實際操作
現在是講解更加完整的例子的時候了,在列表A中的網頁包含了JavaScript方法來驗證文本框中輸入的值,這段JavaScript代碼將搜索包含我的姓氏和我的兩個名字的字符串(忽略大小寫),如果找到了我的名字,則通過字符串對象的替換方法(search)將其替換為一個短名字。第二個文本框是用于接受時間值的,一個正則表達式在此對輸入的時間進行合法性驗證(數字是通過冒號分割的)。這個簡單的例子說明了如何在您的客戶端代碼中加入正則表達式來進行匹配和替換:

復制代碼 代碼如下:
<html><head>
<title>RegExp validation</title>
<script language=”JavaScript”>
function validate() {
var doc = document.test;
varvalName = new RegExp(“^(Tony|Anthony) Patton”, “i”);
if (doc.Name.value.match(valName) == null) {
alert(“Name was not found.”);
} else {
doc.Name.value = doc.Name.value.replace(valName, “T. Patton”);
}
varvalTime = new RegExp(“^([0-1][0-9]|[2][0-3]):([0-5][0-9])$”);
if (doc.time.value.match(valTime) == null) {
alert(“Please enter correct time format (hh:ss)”);
} }
</script></head>
<body><form name=”test”>
Name: <input type=”text” name=”Name” value=””><br>
Time: <input type=”text” name=”time” value=””><br>
<input type=”button” name=”test” value=”test” onClick=”validate();”>
</form></body></html>

強大而復雜
正則表達式的功能確實很強大,但是使用起來也并不簡單,因此,應當循序漸進地學習,當然,它確實值得您花上一些時間來學習如何正確使用。正則表達式為JavaScript (以及其他的語言)操作文本,通用軟件進行表單驗證提供了一個簡單而優雅的方法。

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
高清日韩欧美| 国产精品igao视频网网址不卡日韩 | 日韩在线短视频| 久久av国产紧身裤| 国产精品一国产精品k频道56| 欧美日韩精品一区二区三区在线观看| 欧美日韩91| 国内精品麻豆美女在线播放视频| 国产91在线播放精品| 在线一区av| 亚洲香蕉网站| 91精品99| 在线一区视频| 免费看日韩精品| 婷婷久久免费视频| 国产日本亚洲| 精品淫伦v久久水蜜桃| 新版的欧美在线视频| 欧美不卡高清| 免费久久精品视频| 日韩不卡一二三区| 精品国产亚洲一区二区三区大结局| 黄色欧美在线| 精品一区免费| 日韩免费精品| 精品亚洲a∨| 美女网站一区| 免费在线观看不卡| 欧美三区不卡| 97精品国产福利一区二区三区| 秋霞影院一区二区三区 | 日韩视频网站在线观看| 婷婷丁香综合| 日韩精品三级| 精品国产网站| 伊人久久成人| 国产亚洲精品美女久久 | 日韩区一区二| 欧美aa在线视频| 999久久久精品国产| 亚洲最大av| 精品国产黄a∨片高清在线| 婷婷激情久久| 欧美亚洲一区二区三区| 欧美xxxx中国| 免费成人在线影院| 国产在视频一区二区三区吞精| 91精品99| 久久av中文| 最新日韩av| 国产精品亚洲片在线播放| 99成人在线视频| **爰片久久毛片| 日韩影院二区| 亚洲ww精品| 日韩激情一区| 日韩综合小视频| 日本а中文在线天堂| 免费在线观看视频一区| 久久97视频| 免费观看日韩电影| 深夜福利视频一区二区| 亚洲久久在线| 欧美a级片一区| 国产精品videosex极品| 日韩精品视频网站| 免费看的黄色欧美网站| 婷婷成人在线| 亚洲一区国产| 岛国精品一区| 在线视频日韩| 成人美女视频| 欧美日韩中出| 黑丝一区二区| 国产在视频一区二区三区吞精| 亚洲专区在线| 成人在线丰满少妇av| 亚洲精品系列| 一区二区小说| 精品日韩在线| 日韩一区二区三区在线看| 国产亚洲一区二区手机在线观看 | 中文字幕一区二区三区四区久久| av资源中文在线天堂| 四虎精品一区二区免费| 性欧美xxxx免费岛国不卡电影| 精品一区二区三区四区五区| 日本成人手机在线| 国产综合欧美| 日韩国产在线| 久久香蕉精品香蕉| 欧美一区二区三区久久精品| 先锋亚洲精品| 色一区二区三区| 国产精品伦一区二区| 亚洲精品极品| 国产精品腿扒开做爽爽爽挤奶网站| 日韩欧美一区二区三区在线观看| 久久av中文| 国产日韩一区二区三区在线| 综合在线一区| 老牛影视一区二区三区| 欧美日韩一区二区国产 | 国产亚洲欧洲| 久久亚洲专区| 久久久夜夜夜| 亚洲啊v在线| 久久精品国产免费| 国产精品777777在线播放| 亚洲bt欧美bt精品777| 日韩一区二区免费看| 性欧美xxxx免费岛国不卡电影| 在线天堂资源www在线污| 精品免费视频| 精品国产欧美日韩| 国产激情综合| 国产精品伊人| 国产精品一区高清| 国产精品日韩精品在线播放| 欧美亚洲自偷自偷| 日韩高清成人在线| 香蕉久久久久久| 亚洲综合不卡| 蜜桃视频一区二区| 亚洲天堂免费| 在线观看亚洲精品福利片| 日韩中文字幕1| 亚洲深深色噜噜狠狠爱网站| 综合激情在线| 日韩极品在线观看| 国产乱码精品一区二区三区亚洲人 | 美女福利一区二区三区| 日韩大片在线播放| 成人自拍av| 久久视频国产| 六月丁香综合| 亚洲精品动态| 国产日韩一区二区三区在线播放| 国产探花一区| 欧美黑人巨大videos精品| 精品三区视频| 欧洲av不卡| 亚洲精品2区| 亚洲香蕉视频| 国产精品色婷婷在线观看| 久久不见久久见中文字幕免费| 精品视频高潮| 99精品视频在线观看免费播放| 91久久久精品国产| 免费在线观看成人| 国产色99精品9i| 国产videos久久| 免费欧美一区| 亚洲精品三级| 九九99久久精品在免费线bt| 少妇久久久久| 中文字幕日韩亚洲| 国产精品啊啊啊| 日本国产精品| 亚洲精品欧洲| 精品国产91| 欧美成人高清| 91福利精品在线观看| 精品99久久| 99热免费精品| 国产精品探花在线观看| 欧美日韩精品免费观看视完整 | 不卡中文字幕| 国产亚洲一区| 日韩高清中文字幕一区二区| 欧美中文字幕| 国产精品一区二区三区av| 日韩欧美一区二区三区在线视频| 美女国产一区| 国产精品亚洲综合在线观看| 日韩综合精品| 亚洲精品一级| www.com.cn成人| 亚欧洲精品视频在线观看| 亚洲综合电影| 日本亚洲欧美天堂免费| jizzjizz中国精品麻豆| 日韩在线一二三区| 国产成人精品福利| 日韩一区欧美二区| 国产激情在线播放| 中文字幕一区二区精品区| av资源中文在线| 亚洲精品麻豆| 超级白嫩亚洲国产第一| 中文字幕亚洲影视| 在线观看精品| 国产精品一区二区三区www| 91成人精品视频| 激情综合婷婷| 日本不卡一区二区三区| 久久精品99久久无色码中文字幕| 国产午夜精品一区在线观看| 亚洲午夜电影| 精品香蕉视频|