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

        ?

        巧用正則表達(dá)式實(shí)現(xiàn)JavaScript的用戶輸入校驗(yàn)

        2013-04-29 12:53:23林海菁
        西江月·中旬 2013年7期
        關(guān)鍵詞:用戶方法

        林海菁

        【摘要】在Web程序中,常常需要使用JavaScript腳本進(jìn)行用戶輸入校驗(yàn),避免非法數(shù)據(jù)傳遞到服務(wù)端。正則表達(dá)式是對(duì)字符串操作的一種邏輯公式,用事先定義好的一些特定字符及其組合,組成一個(gè)“規(guī)則字符串”,用來(lái)表達(dá)對(duì)字符串的一種過(guò)濾邏輯。采用正則表達(dá)式可以輕松地解決Web程序客戶端用戶輸入校驗(yàn)的問(wèn)題。

        【關(guān)鍵詞】正則表達(dá)式;JavaScript腳本;用戶輸入校驗(yàn)

        一、引言

        在Web程序中,為了實(shí)現(xiàn)網(wǎng)頁(yè)上的動(dòng)態(tài)功能,需要使用腳本語(yǔ)言進(jìn)行編程處理。通過(guò)腳本,可以動(dòng)態(tài)控制網(wǎng)頁(yè)的外觀和內(nèi)容,可以控制瀏覽器的行為,可以實(shí)現(xiàn)用戶交互操作,可以讀寫(xiě)部分客戶端信息,等等。其中驗(yàn)證用戶輸入表單的信息這一功能在大大小小的Web程序中普遍存在,是所有Web程序開(kāi)發(fā)者都要解決的問(wèn)題。本文介紹了如何利用正則表達(dá)式完美實(shí)現(xiàn)客戶端的用戶輸入校驗(yàn)。由于客戶端腳本語(yǔ)言種類比較多,本文就以比較流行的JavaScript為例進(jìn)行說(shuō)明。

        二、創(chuàng)建正則表達(dá)式

        正則表達(dá)式,又稱正規(guī)表示法、常規(guī)表示法,是對(duì)字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符、及這些特定字符的組合,組成一個(gè)“規(guī)則字符串”,這個(gè)“規(guī)則字符串”用來(lái)表達(dá)對(duì)字符串的一種過(guò)濾邏輯。正則表達(dá)式具有極強(qiáng)的靈活性、邏輯性和功能性,可以迅速地用極簡(jiǎn)單的方式達(dá)到字符串的復(fù)雜控制,但是對(duì)于剛接觸的人來(lái)說(shuō),它又顯得非?;逎y懂。

        在JavaScript中,正則表達(dá)式由RegExp對(duì)象表示。可以使用RegExp( )構(gòu)造函數(shù)創(chuàng)建RegExp對(duì)象,其語(yǔ)法格式如下所示:

        var 對(duì)象變量名=new RegExp(“正則表達(dá)式模式字符串”)

        JavaScript還提供正則表達(dá)式直接量這種語(yǔ)法從而更方便地創(chuàng)建JavaScript正則表達(dá)式,它用包含在一對(duì)斜杠(/)之間的字符來(lái)表示正則表達(dá)式,這是比較常見(jiàn)的創(chuàng)建正則表達(dá)式的方法,其語(yǔ)法格式如下所示:

        var 對(duì)象變量名=/正則表達(dá)式模式字符串/

        無(wú)論采取哪種形式,創(chuàng)建一個(gè)RegExp對(duì)象都是比較容易的。比較晦澀難懂的地方在于正則表達(dá)式的語(yǔ)法,即如何描述字符的模式。

        三、正則表達(dá)式語(yǔ)法

        一個(gè)正則表達(dá)式是由普通字符(如數(shù)字、字母)以及特殊字符(稱為元字符)組成的字符模式。正則表達(dá)式作為一個(gè)模板,將某個(gè)字符模式與給定的字符串進(jìn)行匹配。

        正則表達(dá)式中使用的元字符比較多,限于篇幅,本文只給出一些常用的操作符進(jìn)行說(shuō)明,其它未作說(shuō)明的可以觸類旁通。

        四、運(yùn)用正則表達(dá)式的方法

        在JavaScript腳本中,運(yùn)用正則表達(dá)式檢查字符串信息是否匹配有以下兩種方法:

        1、調(diào)用正則表達(dá)式對(duì)象的常用方法

        (1)exec(string)方法:該方法對(duì)string進(jìn)行匹配檢查,并返回匹配結(jié)果。符合將返回結(jié)果“true”,否則返回結(jié)果“false”。

        (2)test(string)方法:該方法用于測(cè)試string是否含有匹配結(jié)果,如果包含將返回結(jié)果“true”,否則返回結(jié)果“false”。

        2、調(diào)用內(nèi)置對(duì)象String的正則表達(dá)式方法

        (1)match(pattern)方法:該方法根據(jù)正則表達(dá)式字符模式pattern對(duì)String對(duì)象的字符串進(jìn)行正則匹配,如果匹配到,返回匹配結(jié)果,如果匹配不到則返回null。

        (2)search(pattern)方法:該方法根據(jù)pattern對(duì)字符串進(jìn)行正則匹配,如果匹配到一個(gè)結(jié)果,則返回它的索引數(shù),否則返回-1。

        (3)replace(pattern, replacement)方法:該方法根據(jù)pattern對(duì)字符串進(jìn)行正則匹配,將匹配結(jié)果替換為replacement。

        (4)split(pattern)方法:該方法根據(jù)pattern對(duì)字符串進(jìn)行正則分割,返回一個(gè)分割的數(shù)組。

        五、常用正則表達(dá)式

        很多通用的用戶輸入信息在多數(shù)Web程序中都會(huì)出現(xiàn),如身份證號(hào)、郵箱地址、電話號(hào)碼等,開(kāi)發(fā)者可以將這些信息的檢查定義成常用的函數(shù),寫(xiě)在一個(gè)js文檔中,供各Web程序隨時(shí)調(diào)用。以下列舉出一些較復(fù)雜的但常用的正則表達(dá)式供參考:

        1、檢查身份證號(hào)

        function checkIdCard (s) {

        //身份證正則表達(dá)式(15位)

        var rs1=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;

        //身份證正則表達(dá)式(18位)

        Var rs2=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/;

        return rs1.test(s) || rs2.test(s);

        }

        2、檢查字符串中是否含有中文

        function hasChinese (s) {

        var rs=/[\u4E00-\u9FA5]/g;

        return rs.test(s);

        }

        【參考文獻(xiàn)】

        [1]Nicholas C.Zakas.JavaScript高級(jí)程序設(shè)計(jì)[M].人民郵電出版社,2012.

        [2]David Flanagan.JavaScript權(quán)威指南[M].清華大學(xué)出版社,2007.

        猜你喜歡
        用戶方法
        學(xué)習(xí)方法
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        可能是方法不對(duì)
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        用對(duì)方法才能瘦
        Coco薇(2016年2期)2016-03-22 02:42:52
        四大方法 教你不再“坐以待病”!
        Coco薇(2015年1期)2015-08-13 02:47:34
        賺錢(qián)方法
        捕魚(yú)
        Camera360:拍出5億用戶
        色综合av综合无码综合网站| 黄片午夜免费观看视频国产| 尤物蜜桃视频一区二区三区| 亚洲国产精品无码久久一线 | 中文字幕人妻第一区| 天天做天天躁天天躁| 中文字幕亚洲无线码a| 蜜桃在线视频一区二区| 色多多性虎精品无码av| a级国产乱理论片在线观看| 91久久国产综合精品| 亚洲av无吗国产精品| 真人抽搐一进一出视频| 国产精品麻豆欧美日韩ww| 国产h视频在线观看网站免费| 日韩中文字幕在线丰满| 日本一二三区视频在线| 亚洲av无码av吞精久久| 久久久久久久久高潮无码| 黑人玩弄极品人妻系列视频| 无码人妻丰满熟妇区五十路| 先锋影音av资源我色资源| 婷婷精品国产亚洲av| 亚洲女同恋av中文一区二区| 丰满人妻一区二区三区视频53| 免费在线亚洲视频| 一本色道亚州综合久久精品| 精品人妻av一区二区三区| 亚洲av无码专区电影在线观看| 日韩在线视精品在亚洲| 在线看亚洲一区二区三区| 久热re这里精品视频在线6| 亚洲欧美日韩精品高清| 亚洲人妻有码中文字幕| 国产一区二区三区精品免费av| 色八区人妻在线视频免费| 亚洲av影院一区二区三区四区| 亚洲国产一区一区毛片a| 国产福利永久在线视频无毒不卡| 亚洲av无码成人yellow| 日本高清二区视频久二区|