郵箱格式判斷
1view code//是否是 合法郵箱
2bool isvalidemail(const cstring stremail)38
char
ch;9
10int atcount =0;
11int atpos = 0;
12int dotcount = 0;
13for(int i=0; i//
從0 開始判斷
1423
else
if( (atcount>0) && (ch==46) )//
@ 符號後的"."號
2427}28
else
2932}33
//6. 結尾不可以是字元 "@" 或者 "".
34if( ch == 46)
3538
//2. 必須包含乙個 並且 只有乙個符號「@」
39//
3. @ 後必須包含至少乙個至多三個符號"."
40if( (atcount!=1) || (dotcount<1) || (dotcount>3) )
41return
false;
42//
5. 不允許儲蓄「@.」 或者 ".@"
43int x=-1, y=-1;
44 x=stremail.find(_t("@."));
45 y=stremail.find(_t(".@"));
46if( x>0 || y>0)
4750
return
true;
51 }
身份證:
1view code//身份證正規表示式(15位)
2 isidcard1=/^[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d$/;3//
身份證正規表示式(18位)
4 isidcard2=/^[1-9]\d[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d$/;
5地區、性別和身份證進行判斷的正規表示式:67
var8 acity=
1314
function
cidinfo(sid)(\d|x)$/i.test(sid))return
false
;18 sid=sid.replace(/x$/i,"a");
19if(acity[parseint(sid.substr(0,2))]==null)return "error:非法地區";
20 sbirthday=sid.substr(6,4)+"-"+number(sid.substr(10,2))+"-"+number(sid.substr(12,2));
21var d=new date(sbirthday.replace(/-/g,"/"))
22if(sbirthday!=(d.getfullyear()+"-"+ (d.getmonth()+1) + "-" + d.getdate()))return "error:非法生日";
23for(var i = 17;i>=0;i --) isum += (math.pow(2,i) % 11) * parseint(sid.charat(17 - i),11)
24if(isum%11!=1)return "error:非法證號";
25return acity[parseint(sid.substr(0,2))]+","+sbirthday+","+(sid.substr(16,1)%2?"男":"女")
26 }
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...