亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        正則表達(dá)式在網(wǎng)頁表單驗(yàn)證中的應(yīng)用

        2017-04-25 02:32:39孫立友梁宏英

        孫立友+梁宏英

        摘要:在網(wǎng)站制作,尤其是應(yīng)用B/S(Browser/Server,瀏覽器/服務(wù)器)架構(gòu)的動(dòng)態(tài)網(wǎng)站,表單扮演了非常重要的角色,它是客戶端向服務(wù)器提交數(shù)據(jù)的載體。為了保證表單提交數(shù)據(jù)的合法性,需要對(duì)提交的某些關(guān)鍵數(shù)據(jù)進(jìn)行驗(yàn)證。本文主要論述如何應(yīng)用正則表達(dá)式驗(yàn)證表單數(shù)據(jù),并給出了幾類常用的表單驗(yàn)證正則表達(dá)式。

        關(guān)鍵詞:表單;正則表達(dá)式;網(wǎng)站制作

        中圖分類號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2017)01-0236-01

        正則表達(dá)式是用于模式匹配和替換的有力工具,它既可以用于數(shù)據(jù)有效性驗(yàn)證,如測試字符串是否匹配某種模式;又可以用于替換文本,即在文檔中使用正則表達(dá)式查找標(biāo)識(shí)特定文字,然后進(jìn)行替換或刪除;還可以根據(jù)模式匹配從字符串中提取一個(gè)子字符串,用來在指定文本或輸入數(shù)據(jù)中查找特定文字。正則表達(dá)式功能十分強(qiáng)大,但是又非常簡潔。本文主要闡述正則表達(dá)式的基本內(nèi)涵,及它在網(wǎng)站表單數(shù)據(jù)驗(yàn)證中的應(yīng)用。

        1 正則表達(dá)式概述

        正則表達(dá)式,又稱正規(guī)表示法、常規(guī)表示法(Regular Expression,常簡寫為regex、regexp或RE),在計(jì)算機(jī)科學(xué)中,是指一個(gè)用來描述或者匹配一系列符合某個(gè)句法規(guī)則的字符串的單個(gè)字符串,即用事先定義好的一些特定字符及這些字符的組合,組成一個(gè)“規(guī)則字符串”,用來表達(dá)對(duì)字符串的一種過濾邏輯。所謂匹配,是指在給定的字符串中,查找與給定的正則表達(dá)式相匹配的部分,滿足條件的可能不止一個(gè),每一個(gè)滿足條件的部分都被稱為一個(gè)匹配。例如,最簡單正則表達(dá)式"is"可以匹配“this”、“his”等字符串,但是不能匹配"Island"。

        給定一個(gè)正則表達(dá)式和另一個(gè)字符串,可以驗(yàn)證給定的字符串是否符合正則表達(dá)式的過濾邏輯(又稱“匹配”),或者可以從字符串中獲取我們想要的特定部分。在編寫處理字符串的程序或網(wǎng)頁時(shí),經(jīng)常需要驗(yàn)證或查找符合某些復(fù)雜規(guī)則的字符串,正則表達(dá)式就非常適用于描述這些復(fù)雜的文本規(guī)則。因?yàn)檎齽t表達(dá)式的主要應(yīng)用對(duì)象是文本,所以可以說正則表達(dá)式是用于文本匹配的工具。

        2 正則表達(dá)式語法

        正則表達(dá)式主要由普通字符和特殊字符(又稱元字符)組成。普通字符主要包含英文字母a-z/A-Z、數(shù)字0-9等,而特殊字符都具有特殊的含義,比如,特殊字符“\d”可以匹配任意一位數(shù)字,而“\w”則可以匹配字母、數(shù)字或下劃線字符,還有匹配子表達(dá)式出現(xiàn)次數(shù)的“*”(任意次)、“+”(至少一次)、“?”(零次或一次)等特殊字符。

        例如查找“is”,可以使用最簡單的由普通字符組成的正則表達(dá)式“is”,匹配含有“is”的字符串,但是很多單詞如this、his、kiss等都包含“is”,因此若要精確匹配查找“is”,不能只用“is”正則查找,而是應(yīng)該使用正則表達(dá)式“\bis\b”(“\b”是一個(gè)特殊字符,它用來匹配一個(gè)單詞的邊界,即匹配單詞的開頭或結(jié)尾)。

        3 應(yīng)用正則表達(dá)式驗(yàn)證表單數(shù)據(jù)

        在網(wǎng)站開發(fā),尤其是動(dòng)態(tài)網(wǎng)站開發(fā)方面,表單是客戶端向服務(wù)器提交數(shù)據(jù)的重要載體,扮演者非常重要的角色。如何驗(yàn)證表單提交數(shù)據(jù)的合法性也成為一個(gè)大問題。為了驗(yàn)證提交數(shù)據(jù)的合法性,開發(fā)人員可能需要寫很多的驗(yàn)證函數(shù),這給開發(fā)工作帶來很大的困擾,而應(yīng)用正則表達(dá)式驗(yàn)證提交數(shù)據(jù)則很大提高了代碼的可重用性,并提高了開發(fā)效率。

        通常表單數(shù)據(jù)的驗(yàn)證主要有兩方面:一方面是判斷用戶輸入的數(shù)據(jù)是否合法;另一方面是提示用戶的數(shù)據(jù)為什么是不合法的。在表單數(shù)據(jù)中,通常需要驗(yàn)證的內(nèi)容有字符串(如以字母開頭、規(guī)定長度等)、郵政編碼、電話號(hào)碼、電子郵件、手機(jī)號(hào)碼、身份證號(hào)碼等。

        4 常用的表單驗(yàn)證正則表達(dá)式

        在網(wǎng)站開發(fā)時(shí),復(fù)雜的表單驗(yàn)證經(jīng)常需要使用正則表達(dá)式,在實(shí)際應(yīng)用中,表單中常用的幾類正則表達(dá)式如下。

        (1)/^[a-zA-Z][\w -]{n,m}$/:驗(yàn)證以字母開頭、包含字母、數(shù)字、下劃線、連接符- ,且長度在(n+1)-(m+1)之間的字符串。

        (2)/^[\u4E00-\u9FA5]+$/:驗(yàn)證輸入的數(shù)據(jù)只能為中文。

        (3)/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/:驗(yàn)證輸入的Email格式是否正確。

        (4)/^\d{15}$|^\d{17}([0-9]|X)$/或者/^\d{15}$|^\d{17}([0-9]|X)$:驗(yàn)證身份證號(hào)碼(身份證號(hào)碼為15位或者18位,15位時(shí)全為數(shù)字,18位時(shí)前17位為數(shù)字,最后一位是校驗(yàn)位,可能為數(shù)字或字符X)。

        (5)/^[1-9]\d{5}$/:驗(yàn)證中國郵政編碼。

        (6)/^[1-9][0-9]{4,}$/:用于驗(yàn)證QQ號(hào)碼,QQ號(hào)碼最少是5位。

        (7)/^1\d{10}$/:驗(yàn)證大陸手機(jī)號(hào)碼。

        5 結(jié)語

        正則表達(dá)式是用來操作文本和數(shù)據(jù)的強(qiáng)大工具,它具有易用、靈活、功能強(qiáng)大的優(yōu)點(diǎn),而且還可以將那些原本復(fù)雜、繁瑣的文本處理過程變成可自動(dòng)處理的工作。應(yīng)用正則表達(dá)式處理復(fù)雜字符操作,不僅可以提高工作效率,而且也可以在一定程度上節(jié)省代碼量。

        但是,對(duì)于初學(xué)者來說,正則表達(dá)式的語法比較晦澀難懂,原理比較復(fù)雜,不容易被學(xué)習(xí)和掌握。而且,如果正則表達(dá)式寫得不合理,很容易導(dǎo)致性能問題,所以只有清楚地理解正則引擎的執(zhí)行方式,才能寫出好的正則表達(dá)式。

        參考文獻(xiàn)

        [1]Jeffrey E.F.Friedl著,余晟譯.精通正則表達(dá)式(第3版).電子工業(yè)出版社,2012.

        [2]Micbael Fitzgerald.正則表達(dá)式入門.東南大學(xué)出版社,2013.

        [3]Jan Goyvaerts Steven Levithan著 郭耀 遲騁譯.正則表達(dá)式經(jīng)典實(shí)例(第2版).人民郵電出版社,2014.

        日韩人妻免费视频一专区| 国产网站视频| 婷婷一区二区三区在线| 午夜婷婷国产麻豆精品 | 久久亚洲精品无码va白人极品| 99久久精品自在自看国产| 亚洲人成在线播放a偷伦| 亚洲精品中文字幕一二三四 | 91l视频免费在线观看| 日本中国内射bbxx| 欧美孕妇xxxx做受欧美88| 午夜福利不卡无码视频| 亚洲六月丁香色婷婷综合久久| 欧洲美熟女乱又伦av影片| 伊人色综合视频一区二区三区| 91精品久久久久含羞草| 伊人狼人大香线蕉手机视频| 日韩欧美在线综合网另类| 黄色视频免费在线观看| 禁止免费无码网站| 亚洲国产综合精品一区| 99久久精品免费看国产| 精品一区二区久久久久久久网站 | 熟女乱乱熟女乱乱亚洲| 久久综合99re88久久爱| 伊人色综合视频一区二区三区| 无码av免费精品一区二区三区| 你懂的视频网站亚洲视频| 男女做爰高清免费视频网站| 最新四色米奇影视777在线看| 精品黑人一区二区三区| 性生大片免费观看性少妇| 专干老肥熟女视频网站300部| 久久精品无码一区二区乱片子| 日本一本二本三本道久久久| 精品卡一卡二乱码新区| 性久久久久久久| 国产不卡视频一区二区在线观看| 久久国产精品一区av瑜伽| 国产午夜精品一区二区三区| 久久综合亚洲色社区|