日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

JS使用正則表達(dá)式實(shí)現(xiàn)常用的表單驗(yàn)證功能分析

瀏覽:166日期:2024-05-10 14:45:00

本文實(shí)例講述了JS使用正則表達(dá)式實(shí)現(xiàn)常用的表單驗(yàn)證功能。分享給大家供大家參考,具體如下:

表單驗(yàn)證是一個(gè)網(wǎng)站或應(yīng)用的重點(diǎn),一條合適的錯誤提示不僅可以減少無效信息錄入,更會給用戶留下良好的使用體驗(yàn)。但表單設(shè)計(jì)千差萬別,用戶輸入更不可控。一方面,我們要減少出錯提示(這會引起用戶反感),而另一方面,我們則希望得到足夠多的有效信息。魚和熊掌如何兼得?

寫一個(gè)簡單的表單驗(yàn)證:https://www.jb51.net/article/185782.htm

從Google中,我們可以找到一些實(shí)用的方法:

設(shè)計(jì)合適的提示信息; 正則表達(dá)式篩選錯誤輸入。

如何將錯誤信息合適的展示給用戶,我想是見仁見智,需要根據(jù)具體項(xiàng)目具體分析(參考淘寶、京東等電商設(shè)計(jì))。這里主要討論第二種方案:通過正則表達(dá)式最大限度的過濾用戶輸入

這里先列出我自己常用的正則表達(dá)式,然后在深入全面的學(xué)習(xí)它!

常用正則表達(dá)式

文本輸入(拒絕表情):/^[u4e00-u9fa5w]+.*$/gi

密碼: /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{6,20}$/

中文地址(以中文開始,包含英文字符、數(shù)字、括號):/^([u4e00-u9fa5])+[u4e00-u9fa5a-zA-Z0-9()()]*$/

身份證:/^d{6}(18|19|20)?d{2}(0[1-9]|1[12])(0[1-9]|[12]d|3[01])d{3}(d|X)$/i

電子郵箱:/^[A-Za-z0-9u4e00-u9fa5]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/

傳真:/^(d{3,4}-)?d{7,8}$/

網(wǎng)址:/^([hH][tT]{2}[pP]://|[hH][tT]{2}[pP][sS]://)*(([A-Za-z0-9-~]+).)+([A-Za-z0-9-~/])+$/

座機(jī):/^((d{3,4})|d{3,4}-|s)?d{7,14}$/

手機(jī):/^1[34578]d{9}$/

郵編:/^[1-9][0-9]{5}$/

通用驗(yàn)證信息提示函數(shù)

/** * @param {Object} $input 需要驗(yàn)證的輸入項(xiàng) * @param {String} reg 正則表達(dá)式 * @param {String} tips 提示信息 */ function isInfoValid($input, reg, tips) { var val = $input.val().trim(); if(val == ’’) { $input.next().remove(); $input.after(’<span class='valid-error'>*’+$input.siblings('label').text().trim()+’不能為空!<span>’) } else if(reg && tips && !reg.test(val)) { $input.next().remove(); $input.after(’<span class='valid-error'>’+ tips +’</span>’) }else { $input.next().remove(); } } // 可以這樣使用 isInfoValid($zipCode, /^[1-9][0-9]{5}$/, ’*請輸入正確的郵編!’);深入學(xué)習(xí)正則表達(dá)式1. RegExp對象

有兩種方法實(shí)例化RegExp對象

字面量

var reg = /bisb/g; // 全局匹配單詞is

構(gòu)造函數(shù)

var reg = new RegEXP(’bisb’,g)

2. 修飾符

g:global全文搜索,不添加,搜索到第一個(gè)匹配停止 默認(rèn)false,只讀

i:ignore case 忽略大小寫, 默認(rèn)false,只讀

m:multiple lines 多行搜索 默認(rèn)false,只讀

lastIndex: 是當(dāng)前表達(dá)式匹配內(nèi)容的最后一個(gè)字符的下一個(gè)位置

source:正則表達(dá)式的文本字符串

> var reg1 = /w/gim;> reg1.source< 'w' 3. 元字符

正則表達(dá)式由兩種基本字符類型組成:

原義文本字符

a,b,c,d..

元字符

*+?$ ^ . | ( ){ } [ ]

t水平制表符 v垂直制表符 n換行符 r回車符 0空字符 f換頁符 4. 字符類 我們可以使用元字符 [] 來構(gòu)建一個(gè)簡單的類

所謂類是指符合某些特征的對象,一個(gè)泛指,不是特指某個(gè)字符

表達(dá)式[abc]把字符a或b或c歸為一類,表達(dá)式可以匹配這類字符

字符取反(^)

使用元字符 ^ 創(chuàng)建反向類

表達(dá)式[^abc] 表示 不是字符a或b或c的內(nèi)容

5. 范圍類

使用[a-z]來連接兩個(gè)字符表示從a到z的任意字符,閉區(qū)間,包含a 和 z 本身

> ’a1b2c3b4’.replace(/[a-z]/g, ’Q’);< 'Q1Q2Q3Q4'

范圍類可以連寫 [a-zA-Z]

> ’2015-11-5’.replace(/[0-9-]/g, ’A’)< 'AAAAAAAAA' 6.預(yù)定義類及邊界6.1 預(yù)定義類 字符 等價(jià)類 含義 . [^rn] 除了回車符和換行符以外的所有字符 d [0-9] 數(shù)字字符 D [^0-9] 非數(shù)字字符 s [tnx0Bfr] 空白字符 w [a-zA-Z_0-9] 單詞字符(字母數(shù)字下劃線) W [^a-zA-Z0-9_] 非單詞字符 6.2 邊界 字符 含義 ^ 以XXXXX開始 $ 以xxxx結(jié)束 b 單詞邊界 B 非單詞邊界 7. 量詞 字符 含義 ? 出現(xiàn)零次或一次(最多出現(xiàn)1次) + 出現(xiàn)一次或多次 * 出現(xiàn)零次或多次(任意 {n} 出現(xiàn)n次 {n,m} 出現(xiàn)n到m次 {n,} 至少出現(xiàn)n次 8.貪婪模式與非貪婪模式8.1 貪婪模式

在正則表達(dá)式中,默認(rèn)盡可能多的匹配

> ’1234678’.replace(/d{3,6}/g, ’X’)< 'X78'8.2 非貪婪模式

讓正則表達(dá)誰盡可能少的匹配,也就是說一旦成功匹配就不再繼續(xù)嘗試

做法很簡單,在量詞后面加一個(gè) ?即可

> ’123456789’.match(/d{3,5}?/g)< ['123','456','789']9. 分組9.1 分組

使用 ()可以達(dá)到分組的功能,使量詞作用于分組

> ’fayfayfayfsd’.replace(/(fay){3}/g, ’X’)< 'Xfsd'9.2 或

使用 | 表示 或

> ’ByronCasper’.replace(/Byron|Casper/g, ’X’)< 'XX'9.3 $引用,捕獲分組 注意: 一定要加(),用$捕獲分組

> ’2016-11-05’.replace(/(d{4})-(d{2})-(d{2})/g,’$2-$3-$1’)< '05-11-2016'

忽略分組

不希望捕獲某些分組,只需要在分組內(nèi)加上 ?:

(?:Byron).(ok)

PS:這里再為大家提供2款非常方便的正則表達(dá)式工具供大家參考使用:

JavaScript正則表達(dá)式在線測試工具:http://tools.jb51.net/regex/javascript

正則表達(dá)式在線生成工具:http://tools.jb51.net/regex/create_reg

更多關(guān)于jQuery相關(guān)內(nèi)容可查看本站專題:《jQuery正則表達(dá)式用法總結(jié)》、《jQuery字符串操作技巧總結(jié)》、《jQuery操作xml技巧總結(jié)》、《jQuery擴(kuò)展技巧總結(jié)》、《jquery選擇器用法總結(jié)》及《jQuery常用插件及用法總結(jié)》

希望本文所述對大家jQuery程序設(shè)計(jì)有所幫助。

標(biāo)簽: JavaScript
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
成人在线免费观看91| 久久精选视频| 亚洲免费影视| 午夜国产精品视频| 在线精品小视频| 婷婷六月综合| 亚洲午夜久久久久久尤物| 久久九九99| 一区久久精品| 亚洲一区二区三区无吗| 亚洲精品在线二区| 日本久久二区| 日本欧美大码aⅴ在线播放| 亚洲精品进入| 日韩免费精品| 国产欧美另类| 欧美xxxx中国| 亚洲性色视频| 蜜桃视频在线观看一区| 青草国产精品久久久久久| 国产一区 二区| 国产成人精品福利| 亚洲va中文在线播放免费| 亚洲国产综合在线看不卡| 在线视频日韩| 日本不卡的三区四区五区| 国产伦精品一区二区三区千人斩| 国产精品白丝久久av网站| 精品一区二区三区亚洲| 超级白嫩亚洲国产第一| 久久精品在线| 美国三级日本三级久久99| 日韩国产一区二| 精品国产乱码久久久久久樱花| 日韩在线不卡| 蜜桃视频在线观看一区二区| 国产欧美日韩在线一区二区| 福利片在线一区二区| 精品欧美久久| 亚洲精品日本| 国产精品videossex久久发布| 日韩电影二区| 免费在线观看日韩欧美| 国产精品一区二区99| 成人国产精品| 久久国产精品99国产| 国产精品久久久久久av公交车| 日韩精品2区| 四虎精品一区二区免费| 精品一区二区三区中文字幕| 亚洲性色视频| 国产探花在线精品一区二区| 免费观看亚洲| 97久久超碰| 日韩精品一区二区三区免费观看| 亚洲一区二区免费在线观看| 岛国精品一区| 亚洲一区二区三区无吗| 国产成人黄色| 免费久久精品视频| 黄色网一区二区| 蜜臀久久99精品久久久久宅男 | 视频一区二区三区中文字幕| 国产精品黄色片| 黄色国产精品| 国产不卡一区| 婷婷精品在线| 91精品啪在线观看国产18| 日韩av三区| 九色精品91| 国产精品夜夜夜| 99热精品在线| 中文字幕人成乱码在线观看 | 久久久国产精品网站| 中文日韩欧美| 麻豆视频在线看| 日韩福利在线观看| 在线国产一区二区| 日韩理论视频| 国产精品美女午夜爽爽| 美女网站一区| 高清久久一区| 国产精品久av福利在线观看| 国产婷婷精品| 亚洲1234区| 国产精品久久久久77777丨| 视频一区二区三区入口| 亚洲a一区二区三区| 美腿丝袜在线亚洲一区| 亚洲欧美网站在线观看| 五月婷婷亚洲| 欧美成a人免费观看久久| 免费日韩成人| 国产日韩欧美一区在线| 亚洲久草在线| 蜜臀91精品国产高清在线观看| 岛国精品一区| 麻豆国产91在线播放| 国产探花一区| 日韩国产欧美视频| 一区二区不卡| 91久久久久| 99精品视频在线| av资源中文在线| 国产精品观看| 国产精品久久久一区二区| 日韩国产欧美在线播放| 亚洲精品系列| 婷婷久久免费视频| 亚洲一级大片| 久久不射中文字幕| 香蕉成人久久| 免费视频久久| 在线观看视频免费一区二区三区| 国产亚洲欧洲| 最新日韩av| 在线视频亚洲| 视频一区二区中文字幕| 国产麻豆综合| 天堂成人免费av电影一区| 久久国产精品99国产| 天使萌一区二区三区免费观看| 激情欧美一区| 日韩不卡免费高清视频| 欧美aa一级| 三上悠亚国产精品一区二区三区| 国产成人精品亚洲日本在线观看| 鲁鲁在线中文| 99久久精品国产亚洲精品| 久久久久美女| 亚洲激情中文| 亚洲在线观看| 日韩综合一区二区| 久久激情五月激情| 国产情侣一区在线| 久久精品国产网站| 亚洲午夜天堂| 日韩精品一区二区三区免费观影 | 国产一级成人av| 国产精品xxxav免费视频| 精品国产亚洲一区二区在线观看| 国产成人精品一区二区三区免费| 亚洲播播91| 免费日韩av片| 国产欧美一区二区精品久久久 | 91免费精品国偷自产在线在线| 欧美一级二级视频| 久久99影视| 欧洲精品一区二区三区| 婷婷丁香综合| 日韩av网站在线观看| 丰满少妇一区| 亚洲国产成人精品女人| 亚洲久久一区| 美女av一区| 日本韩国欧美超级黄在线观看| 欧美日韩精品一本二本三本| 综合激情一区| 久久久亚洲欧洲日产| 国产麻豆久久| 久久福利毛片| 国产精品videosex极品| 丝袜美腿诱惑一区二区三区 | 在线亚洲一区| 国产精品久久久久av蜜臀| 神马午夜在线视频| 免费日韩一区二区| 国产精品对白| 一本一道久久a久久精品蜜桃| 青青国产91久久久久久| 色偷偷偷在线视频播放| 免费看精品久久片| 国内自拍视频一区二区三区| 合欧美一区二区三区| 日韩不卡在线观看日韩不卡视频| 精品国产a一区二区三区v免费| 影音先锋久久| 国产精品大片| 欧美日韩国产高清| 国产欧美日韩综合一区在线播放| 久久久久99| 国产日韩中文在线中文字幕 | 91tv亚洲精品香蕉国产一区| 综合日韩在线| 日韩欧美在线中字| 奇米777国产一区国产二区| 久久蜜桃资源一区二区老牛| 日韩av成人高清| 99热精品久久| 国产精品资源| 日韩视频二区| 精品亚洲精品| 亚洲精品乱码| 久久人人99| 久久的色偷偷| 美女久久网站| 日韩欧美一区二区三区免费看| 日本aⅴ亚洲精品中文乱码| 亚洲一级高清| 红杏一区二区三区|