正規表示式

2022-02-15 07:23:17 字數 1834 閱讀 5915

郵箱格式判斷

1

//是否是 合法郵箱

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 }

view code

身份證:

1

//身份證正規表示式(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 }

view code

正規表示式 正規表示式 總結

非負整數 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正規表示式 編寫正規表示式

為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...