常用正規表示式

2021-08-30 23:04:24 字數 978 閱讀 8459

ip

ip字串,由四段組成,每一段是0~255的數字,段與段之間用小數點隔開,比如61.139.2.69就是乙個合法的ip字串。如果正規表示式寫成\d(\.\d)無疑是不負責的,因為它可以匹配300.400.555.666這樣的非法ip字串。要匹配乙個0~255之間的數,有幾種匹配方式,下面是其中一種:

匹配正規表示式說明

0~9\d單個數字

10~99[1-9]\d兩位數

100~1991\d\d百位為1的三位數

200~2492[0-4]\d三位數,百位是2,十位是0~9

250~25525[0-5]三位數,百位是2,十位是5,個位是0~5

寫成正規表示式,即:(\d|([1-9]\d)|(1\d\d)|(2[0-4]\d)|(25[0-5])),但是這樣的正規表示式在匹配254這樣的字串時,會分別匹配2、5、4,得到3個匹配,達不到預期效果,正確做法是將次序顛倒為((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d),因為在(***|yyy)這種匹配行為中,是從左向右搜尋的。

完整的正規表示式是:

((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d)(\.((25[0-5])|(2[0-4]\d)|(1\d\d)|([1-9]\d)|\d))

網域名稱乙個完整的網域名稱,由根域、頂級域、二級、**……網域名稱構成,每級網域名稱之間用點分開,每級網域名稱由字母、數字和減號構成(第乙個字母不能是減號),不區分大小寫,長度不超過63。

很顯然,單獨的名字可以由正規表示式[a-za-z0-9][-a-za-z0-9]來匹配,而完整的網域名稱至少包括兩個名字(比如google.com,由google和com構成),最後可以有乙個表示根域的點(在規範中,最後有乙個點的才是完整網域名稱,但一般認為包括兩個以上名字的網域名稱也是完整網域名稱,哪怕它後面沒有點)。

匹配完整網域名稱的正規表示式:

[a-za-z0-9][-a-za-z0-9](\.[a-za-z0-9][-a-za-z0-9])+\.?

正規表示式 常用正規表示式

一 校驗數字的表示式 1 數字 0 9 2 n位的數字 d 3 至少n位的數字 d 4 m n位的數字 d 5 零和非零開頭的數字 0 1 9 0 9 6 非零開頭的最多帶兩位小數的數字 1 9 0 9 0 9 7 帶1 2位小數的正數或負數 d d 8 正數 負數 和小數 d d 9 有兩位小數的...

正規表示式 常用正規表示式

網域名稱 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 4 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 或者 1 3...

常用正規表示式

0 9 0 9 0 9 數字或小數點 0 9 0 9 或 d d 數字和小數點 驗證手機號碼 function checkstr str if reg.test str return true 2位小數 function checknumber str if reg.test str return ...