//校驗是否全由數字組成
function isDigit(s) { var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) return false return true }
匹配中文字符的正則表達式: [u4e00-u9fa5]
評注:匹配中文還真是個頭疼的事,有了這個表達式就好辦了
匹配雙字節字符(包括漢字在內):[^x00-xff]
評注:可以用來計算字符串的長度(一個雙字節字符長度計2,ASCII字符計1)
匹配空白行的正則表達式:ns*r
評注:可以用來刪除空白行
匹配HTML標記的正則表達式:< (S*?)[^>]*>.*?|< .*? />
評注:網上流傳的版本太糟糕,上面這個也僅僅能匹配部分,對于復雜的嵌套標記依舊無能為力
匹配首尾空白字符的正則表達式:^s*|s*$
評注:可以用來刪除行首行尾的空白字符(包括空格、制表符、換頁符等等),非常有用的表達式
匹配Email地址的正則表達式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
評注:表單驗證時很實用
匹配網址URL的正則表達式:[a-zA-z]+://[^s]*
評注:網上流傳的版本功能很有限,上面這個基本可以滿足需求
匹配帳號是否合法(字母開頭,允許5-16字節,允許字母數字下劃線):^[a-zA-Z][a-zA-Z0-9_]{4,15}$
評注:表單驗證時很實用
匹配國內電話號碼:d{3}-d{8}|d{4}-d{7}
評注:匹配形式如 0511-4405222 或 021-87888822
匹配騰訊QQ號:[1-9][0-9]{4,}
評注:騰訊QQ號從10000開始
匹配中國郵政編碼:[1-9]d{5}(?!d)
評注:中國郵政編碼為6位數字
匹配身份證:d{15}|d{18}
評注:中國的身份證為15位或18位
匹配ip地址:d+.d+.d+.d+
評注:提取ip地址時有用
匹配特定數字:
^[1-9]d*$ //匹配正整數
^-[1-9]d*$ //匹配負整數
^-?[1-9]d*$ //匹配整數
^[1-9]d*|0$ //匹配非負整數(正整數 + 0)
^-[1-9]d*|0$ //匹配非正整數(負整數 + 0)
^[1-9]d*.d*|0.d*[1-9]d*$ //匹配正浮點數
^-([1-9]d*.d*|0.d*[1-9]d*)$ //匹配負浮點數
^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$ //匹配浮點數
^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ //匹配非負浮點數(正浮點數 + 0)
^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$ //匹配非正浮點數(負浮點數 + 0)
評注:處理大量數據時有用,具體應用時注意修正
匹配特定字符串:
^[A-Za-z]+$ //匹配由26個英文字母組成的字符串
^[A-Z]+$ //匹配由26個英文字母的大寫組成的字符串
^[a-z]+$ //匹配由26個英文字母的小寫組成的字符串
^[A-Za-z0-9]+$ //匹配由數字和26個英文字母組成的字符串
^w+$ //匹配由數字、26個英文字母或者下劃線組成的字符串
在使用RegularExpressionValidator驗證控件時的驗證功能及其驗證表達式介紹如下:
只能輸入數字:“^[0-9]*$”
只能輸入n位的數字:“^d{n}$”
只能輸入至少n位數字:“^d{n,}$”
只能輸入m-n位的數字:“^d{m,n}$”
只能輸入零和非零開頭的數字:“^(0|[1-9][0-9]*)$”
只能輸入有兩位小數的正實數:“^[0-9]+(.[0-9]{2})?$”
只能輸入有1-3位小數的正實數:“^[0-9]+(.[0-9]{1,3})?$”
只能輸入非零的正整數:“^+?[1-9][0-9]*$”
只能輸入非零的負整數:“^-[1-9][0-9]*$”
只能輸入長度為3的字符:“^.{3}$”
只能輸入由26個英文字母組成的字符串:“^[A-Za-z]+$”
只能輸入由26個大寫英文字母組成的字符串:“^[A-Z]+$”
只能輸入由26個小寫英文字母組成的字符串:“^[a-z]+$”
只能輸入由數字和26個英文字母組成的字符串:“^[A-Za-z0-9]+$”
只能輸入由數字、26個英文字母或者下劃線組成的字符串:“^w+$”
驗證用戶密碼:“^[a-zA-Z]w{5,17}$”正確格式為:以字母開頭,長度在6-18之間,
只能包含字符、數字和下劃線。
驗證是否含有^%&’,;=?$”等字符:“[^%&’,;=?$x22]+”
只能輸入漢字:“^[u4e00-u9fa5],{0,}$”
驗證Email地址:“^w+[-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$”
驗證InternetURL:“^http://([w-]+.)+[w-]+(/[w-./?%&=]*)?$”
驗證電話號碼:“^((d{3,4})|d{3,4}-)?d{7,8}$”
正確格式為:“XXXX-XXXXXXX”,“XXXX-XXXXXXXX”,“XXX-XXXXXXX”,
“XXX-XXXXXXXX”,“XXXXXXX”,“XXXXXXXX”。
驗證身份證號(15位或18位數字):“^d{15}|d{}18$”
驗證一年的12個月:“^(0?[1-9]|1[0-2])$”正確格式為:“01”-“09”和“1”“12”
驗證一個月的31天:“^((0?[1-9])|((1|2)[0-9])|30|31)$”
正確格式為:“01”“09”和“1”“31”。
匹配中文字符的正則表達式: [u4e00-u9fa5]
匹配雙字節字符(包括漢字在內):[^x00-xff]
匹配空行的正則表達式:n[s| ]*r
匹配HTML標記的正則表達式:/< (.*)>.*|< (.*) />/
匹配首尾空格的正則表達式:(^s*)|(s*$)
匹配Email地址的正則表達式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
匹配網址URL的正則表達式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?
(1)應用:計算字符串的長度(一個雙字節字符長度計2,ASCII字符計1)
String.prototype.len=function(){return this.replace([^x00-xff]/g,”aa”).length;}
(2)應用:javascript中沒有像vbscript那樣的trim函數,我們就可以利用這個表達式來實現
String.prototype.trim = function() { return this.replace(/(^s*)|(s*$)/g, “”); }
(3)應用:利用正則表達式分解和轉換IP地址
function IP2V(ip) //IP地址轉換成對應數值 { re=/(d+).(d+).(d+).(d+)/g //匹配IP地址的正則表達式 if(re.test(ip)) { return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1 } else { throw new Error(”Not a valid IP address!”) } }
(4)應用:從URL地址中提取文件名的javascript程序
s=”http://www.9499.net/page1.htm”; s=s.replace(/(.*/){0,}([^.]+).*/ig,”$2″) ; //Page1.htm
(5)應用:利用正則表達式限制網頁表單里的文本框輸入內容
用正則表達式限制只能輸入中文:onkeyup=”value=”/blog/value.replace(/[“^u4E00-u9FA5]/g,”) ”
onbeforepaste=”clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,”))”
用正則表達式限制只能輸入全角字符: onkeyup=”value=”/blog/value.replace(/[“^uFF00-uFFFF]/g,”) ”
onbeforepaste=”clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^uFF00-uFFFF]/g,”))”
用正則表達式限制只能輸入數字:onkeyup=”value=”/blog/value.replace(/[“^d]/g,”) “onbeforepaste= “clipboardData.setData
(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”))”
用正則表達式限制只能輸入數字和英文:onkeyup=”value=”/blog/value.replace(/[W]/g,””) “onbeforepaste=”clipboardData.setData
(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”
中正則表達式,js去掉html標記,去掉字符,截取字符(2009-01-11 10:20:14)
2007-07-08 15:26
1,得到網頁上的鏈接地址:
string matchString = @"<a[^>]+href=s*(?:'(?<href>[^']+)'|""(?<href>[^""]+)""|(?<href>[^>s]+))s*[^>]*>";
2,得到網頁的標題:
string matchString = @"<title>(?<title>.*)</title>";
3,去掉網頁中的所有的html標記:
string temp = Regex.Replace(html, "<[^>]*>", ""); //html是一個要去除html標記的文檔
java 中去掉網頁中的所有標簽
str = str.replaceAll("<[^>]*>", "");
4, string matchString = @”<title>([Sst]*?)</title>”;
5,js去掉所有html標記的函數:
function delHtmlTag(str) { return str.replace(/</?.+?>/g,"");//去掉所有的html標記 }
這個可能IE5會錯,那用這個,梅花的:
function delHtmlTag(str) { return str.replace(/<[^>]+>/g,"");//去掉所有的html標記 }
校驗登錄名:只能輸入5-20個以字母開頭、可帶數字、“_”、“.”的字串
function isRegisterUserName(s) { var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/; if (!patrn.exec(s)) return false return true }
來源:正則匹配空格的問題
字符串內字符鍵有空格,但是空格的數量可能不一致,通過正則將空格的個數統一變為一個。
例如:藍 色 理 想
變成:藍 色 理 想
aobert的正則:
<script type="text/javascript"> var str="藍 色 理 想" var reg=/s+/g str = str.replace(reg," ") document.write(str) </script>
判斷字符串是不是由數字組成
來源:有沒有簡單的方法判斷字符串由數字組成?
這個正則比較簡單,寫了一個測試
<script type="text/javascript"> function isDigit(str){ var reg = /^d*$/; return reg.test(str); } var str = "7654321"; document.write(isDigit(str)); var str = "test"; document.write(isDigit(str)); </script>
電話號碼正則
來源:想問一下關于電話號碼的正則判斷
:求一個驗證電話號碼的JS正則
/^d{3,4}-d{7,8}(-d{3,4})?$/區號必填為3-4位的數字,區號之后用“-”與電話號碼連接
^d{3,4}-電話號碼為7-8位的數字
d{7,8}分機號碼為3-4位的數字,非必填,但若填寫則以“-”與電話號碼相連接
(-d{3,4})?手機號碼正則表達式
正則驗證手機號,忽略前面的0,支持130-139,150-159。忽略前面0之后判斷它是11位的。
cloeft的正則:
/^0*(13|15)d{9}$/ ^0*匹配掉開頭任意數量的0。
由于手機號碼是13任意數字9位,和15任意數字9位,所以可以用(13|15)d{9}匹配。
測試代碼如下:
function testReg(reg,str){ return reg.test(str); } var reg = /^0*(13|15)d{9}$/; var str = '13889294444'; var str2 = '12889293333'; var str3 = '23445567'; document.write(testReg(reg,str)+'<br />'); document.write(testReg(reg,str2)+'<br />'); document.write(testReg(reg,str3)+'<br />');
使用正則表達式實現刪除字符串中的空格:
來源:請問js中有沒有去掉空格的函數
代碼以及測試代碼如下:
<script type="text/javascript"> //刪除字符串兩側的空白字符。 function trim(str){ return str.replace(/^s+|s+$/g,''); } //刪除字符串左側的空白字符。 function ltrim(str){ return str.replace(/^s+/g,''); } //刪除字符串右側的空白字符。 function rtrim(str){ return str.replace(/s+$/g,''); } //以下為測試代碼 var trimTest = " 123456789 "; //前后各有一個空格。 document.write('length:'+trimTest.length+'<br />'); //使用前 document.write('ltrim length:'+ltrim(trimTest).length+'<br />'); //使用ltrim后 document.write('rtrim length:'+rtrim(trimTest).length+'<br />'); //使用rtrim后 document.write('trim length:'+trim(trimTest).length+'<br />'); //使用trim后 </script>
測試的結果如下:
length:11
ltrim length:10
rtrim length:10
trim length:9 限制文本框只能輸入數字和小數點等等
來源:文本框輸入限制的問題????
只能輸入數字和小數點
var reg = /^d*.?d{0,2}$/ 開頭有若干個數字,中間有0個或者一個小數點,結尾有0到2個數字。
只能輸入小寫的英文字母和小數點,和冒號,正反斜杠(:./)
var reg = /[a-z./\:]+/; a-z包括了小寫的英文字母,.是小數點,/和\分別是左右反斜線,最后是冒號。整個組成一個字符集和代碼任一均可,最后在加上+,1或者多個。
替換小數點前內容為指定內容
來源:求一正則表達式!
請問 怎么把這個字符串的小數點前面的字符替換為我自定義的字符串啊?
例如:infomarket.php?id=197 替換為 test.php?id=197
應該可以把第一個點“.”之前的所有單詞字符替換為test就可以了。我寫的正則如下:
<script type="text/javascript"> var str = "infomarket.php?id=197"; var reg = /^w*/ig; //匹配字符串開頭的任意個單詞字符 str = str.replace(reg,'test'); document.write(str); </script>
原帖的有點復雜,沒太看明白。
只匹配中文的正則表達式
來源:關于上傳的時候,只能選擇中文名稱的圖片(是否可以用toASCII方法呢?)
前兩天看的《JavaScript開發王》里恰好有中文的unicode范圍,正則如下:
/[u4E00-u9FA5uf900-ufa2d]/ 寫了一個簡單的測試,會把所有的中文替換成“哦”。
<script type="text/javascript"> var str = "有中文?and English."; var reg = /[u4E00-u9FA5uf900-ufa2d]/ig; str = str.replace(reg,'哦'); document.write(str); </script>
返回字符串的中文字符個數
來源:有沒返回中文字符字節的函數!
一般的字符長度對中文和英文都是不分別的 如JS里的length,那么如何返回字符串中中文字符的個數呢?guoshuang老師在原帖中給出了解決方案,我又沒看懂……
不過我自己也想到了一個辦法:先去掉非中文字符,再返回length屬性。函數以及測試代碼如下:
<script type="text/javascript"> function cLength(str){ var reg = /[^u4E00-u9FA5uf900-ufa2d]/g; //匹配非中文的正則表達式 var temp = str.replace(reg,''); return temp.length; } var str = "中文123"; document.write(str.length+'<br />'); document.write(cLength(str)); </script>
結果:
5
2
中文兩個,數字三個,正確。
下面的測試也正確。
var str = "中文123tets@#!#%$#[][{}"; document.write(str.length+'<br />'); document.write(cLength(str));
正則表達式取得匹配IP地址前三段
來源:如何用正則取IP前3段
192.168.118.101,192.168.118.72, 192.168.118.1都替換成:192.168.118
只要匹配掉最后一段并且替換為空字符串就行了,正則如下:
/.d{1,3}$/ 匹配結尾的.n,.nn或者.nnn。
測試代碼如下:
function replaceReg(reg,str){ return str.replace(reg,'') } var reg = /.d{1,3}$/; var str = '192.168.118.101'; var str2 = '192.168.118.72'; var str3 = '192.168.118.1'; document.write(replaceReg(reg,str)+'<br />'); document.write(replaceReg(reg,str2)+'<br />'); document.write(replaceReg(reg,str3)+'<br />');
相似的有,這個帖子里有一個驗證IP地址的方法:求檢驗MAC地址的正則表達例子
匹配<ul>與<ul>之間的內容
來源:請教個正則的小問題吧
<ul>safsf<ul>safsf</ul><ul>safsf</ul></ul>
用正則可以得到 <ul>起到下個<ul> 之間的內容。
正則如下:
/<ul>[sS]+?<ul>/i 首先匹配兩側的ul標簽,中間的[sS]+?可以匹配一個或者多個任意字符,一定要非貪婪,否則會匹配<ul>safsf<ul>safsf</ul><ul>。
用正則表達式獲得文件名
來源:C: 邻居少妇张开双腿让我爽一夜| 公交车上拨开她湿润的内裤| 波多野结衣片全部电影| 成人免费视频一区二区| 丰满多毛的大隂户BEST| 国产精品久久自在自线| 极品熟妇大蝴蝶20P| 小洞饿了想吃大香肠| 亚洲AV免费高潮喷水| 亚洲色偷拍区另类无码专区| 中文字幕人成无码人妻综合社区| CHINAGARY武警体育飞机| 粉嫩AV一二三区免费| 国产午夜精品一区二区三区| 久久精品99国产精品蜜桃| 免费夜里18款禁用B站软粉色| 欧美性XXXXX极品少妇| 久久久久久久人妻无码中文字幕爆| 美日欧激情AV大片免费观看| 人妻无码久久一区二区三区免费 | 岳女四人共侍一夫婷婷| WWW国产精品内射熟女| 国产精品久久午夜夜伦鲁鲁| 久久99精品久久久久婷婷暖| 国内永久免费CRM系统Z在线| 麻豆熟妇人妻XXXXXX| 日韩熟妇无码字幕视频毛片| 亚洲ΑV久久久噜噜噜噜噜 | 欧美老熟妇乱大交XXXXX| 天天夜碰日日摸日日澡性色AV| 亚洲成AV人片天堂网| 7777精品伊人久久久大香线蕉| 国产 | 欧洲野花视频欧洲1| 久久97人人超人人超碰超国产| 欧美日韩乱一区二区三区| 无码人妻侵犯一区侵犯| 中文字幕丰满乱子无码视频| 国产成人AV免费网址| 久久久G0G0午夜无码精品| 日本入室强伦姧在线观看| 亚洲AV成人午夜电影在线观看| 中文无码字幕一区到五区免费| 丁香色欲久久久久久综合网| 激情内射亚洲一区二区三区| 欧洲人激情毛片无码视频| 亚洲AV成人片无码| AV优选天堂污污污成人亚洲| 国产在线拍揄自揄视频网站| 哦┅┅快┅┅用力啊┅警花少妇| 无码免费无线观看在线视频| 2021日韩无码| 国产在线一区二区三区AV| 欧美老熟妇手机在线观看| 亚洲AV第一成肉网肉片AV| 99久久人妻精品免费二区| 国内精品久久久久久久999 | 亚洲VA中文字幕无码一二三区| 欧美最猛性XXX| 久久久久久久99精品免费观看 | 女生自己动手奖励自己的好处| 午夜精品四季AV日日骚| CAOPORN免费视频国产| 激情综合一区二区迷情校园| 日韩精品免费一线在线观看| 一区二区三区精品视频日本 | 玩弄老太太的BB| 扒开校花的粉嫩小泬| 国产内射合集颜射| 欧美成人黑人XX视频免费观看| 亚洲AV熟女高潮30P| 苍井空一区二区三区在线观看| 精品国偷自产在线视频99| 日韩一区二区三区无码影院| 曰曰摸天天添天天湿| 国产精品亚洲日韩欧美色窝窝色欲| 免费无码又黄又爽又刺激| 亚洲AV无码AV日韩AV网站| 被老头侵犯的人妻| 浪荡艳妇爆乳JUFD汗だく肉感| 学长别揉了~流水了想要~ | 欧美熟VIDEOS肥婆| 亚洲欧美成人一区二区三区| 国产成人无码AV一区二区| 青梅被从小摸到大H补课1视频| 亚洲无人区一码二码三码区别| 国产精品VA在线观看无码不卡 | 国产剧情MV天美传媒| 日产精品卡二卡三卡四卡区| 中文乱码精品一区二区三区人妻| 韩国午夜理伦三级在线观看仙踪林 | 麻豆精品久久久久久久99蜜桃| 亚洲A∨无码一区二区| 色老头在线一区二区三区| 成人国内精品久久久久影院VR| 国产黑色丝袜在线视频| 日本熟妇色XXXXXBBB日本| 2021影音先锋AⅤ资源男人网| 欧洲无线一线二线三W955| 韩国19禁床震无遮掩免费| 日本熟妇色丰满少妇wwwww色| 无码AV中文一区二区三区桃花岛| 日韩在线 | 中文| 中文字幕乱码亚洲无线码三区| 韩日综合成人中文字幕| 无码人妻AⅤ一区二区三区夏目| 成人片黄网站色大片免费观看| 欧美日韩精品视频一区二区三区| 在小巷里被强高HNP| 久久99老妇伦国产熟女高清| 亚洲AV无码专区国产乱码京东传| 国产精华液一二三区别在哪| 熟妇人妻av无码一区二区三区 | 欧美人和黑人牲交网站上线| 中国 韩国 日本 免费看片| 久久精品亚洲中文无东京热 | 成年无码AV片在线免缓冲| 欧美性猛交XXXX乱大交极品| 3CE九色眼影人间水蜜桃| 久久亚洲精品无码AⅤ大香| 亚洲最新版AV无码中文字幕| 精品无码一区二区三区爱欲| 亚洲精品国产成人| 好男人官网资源在线观看| 无码人妻一区二区三区AV| 国产永久AV福利在线观看| 男女做爰高清免费直播网站| 国产JIZZJIZZ麻豆全部免| 国精产品一区二区三区糖心269| 久久躁夜夜躁天天躁| 一本大道东京热无码AⅤ| 精品人妻系列无码人妻漫画| 人妻无码中文字幕| あざらしそふと官网| 欧洲PAYPAL网站WWW| 爱丫爱丫在线影院| 日本丰满熟妇55乱偷| WC女厕撒尿七Ⅴ偷拍| 欧美视频一区二区三区四区| 亚洲成AV人影片在线观看| 久无码久无码AV无码| 欧美日韩一区二区三区自拍| 亚洲国产精品久久久天堂麻豆宅男 | 91精品人妻人人做人碰人人爽| 国产三级国产经典国产AV| 少妇人妻中文字幕| 精品久久人妻AV中文字幕| 亚洲AV无码精品色夜午夜网址| 美女自拍高潮流白浆| 中国成熟妇女毛茸茸| 久久精品九九亚洲精品| 五月激情婷婷丁香综合基地| 成年女人18毛片毛片免费不卡 | 亚洲欧洲日韩综合色天使| 啊灬啊灬啊灬快灬深高潮了亚洲乱色视频在线观看 | 人与各种动ZZZ0O0OXXX| ASSPICS亚洲美女裸体CH| 精品无人区卡卡二卡三乱码| 丝袜美腿一区二区三区| YYY6080韩国三级理论| 欧美亚洲精品SUV| 成人做爰高潮A片免费视频| 日本护士体内SHE精2╳╳╳| А√天堂资源地址在线官网BT| 无码H肉男男在线观看免费| 被吊起来张开腿供人玩弄 | 婷婷伊人久久大香线蕉AV| 国产精品国产三级国产AV′| 亚洲国产精品久久久久久久| 老头扒开粉嫩的小缝亲吻网站| JAPONENSIS性护士| 四虎精品成人免费视频| 激情男女高潮射精AV免费| 民工把奶头吸得又大又长| 唐人社视频呦一区二区| 黑人巨大精品欧美一区二区| 在公车上拨开内裤进入毛片| 欧州一级 片内射AV| 国产精品久久久天天影视香蕉| 亚洲男人AV天堂男人社区| 欧美疯狂性受XXXXX喷水| 国产成人精品福利一区二区三区| 亚洲欧洲精品成人久久曰影片 | 国产乱色精品成人免费视频| 一进一出一爽又粗又大| 日本乱码伦午夜福利在线| 国产午夜男女爽爽爽爽爽| 在办公室被C到呻吟的动态图| 日本入室强伦姧BD在线观看| 娇妻被领导抱进卧室| A男人的天堂久久A毛片| 无码熟妇人妻AV在线影片免费 | 日本XXXⅩ色视频免费观看| 国产亚洲无日韩乱码| 51被公侵犯玩弄漂亮人妻| 无码人妻精品一区二区三区蜜桃| 久久天天躁狠狠躁夜夜2019| 儿子耕了母亲荒废的田| 亚洲中文字幕无码一久久区| 色偷偷色噜噜狠狠网站年轻人| 精品熟人妻一区二区三区在线|
站長資訊網