js正則那些事

js經常使用正則

正則在咱們對錶單進行一些操做的時候,用戶仍是很大的,雖然h5已經有一些新標籤能夠對input進行校驗,可是咱們總能遇到一些奇怪的校驗方式。網絡

 

下面是我我的總結的一些經常使用正則:編碼

 郵箱驗證:/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/
 手機號驗證:^1(3|4|5|7|8)\d{9}$
身份證驗證:/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/(15位的)
 (19位的) /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{4}$/
網絡連接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
郵件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*
圖片連接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?
IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)
郵政編碼:[1-9]{1}(\d+){5}

固然還有一些是咱們須要對錶單進行一些校驗,這些是確定不夠的:總結的還有一下幾點:spa

密碼強度(數字和字母  最少八位):/^(?!([a-zA-Z]+|\d+)$)[a-zA-Z\d]{8,20}$/

只容許漢字:/^[\u4e00-\u9fa5]+$/

只容許數字: /^[0-9]+$/

只容許漢字和字母: /^[\u4e00-\u9fa5a-zA-Z]+$/

只容許字母和數字:/^[0-9a-zA-Z]+$/

千位分隔符(整數):num.replace(/\d{1,3}(?=(\d{3})+$)/g,function(s){ return s+','})
分隔符升級版(使用三目表達式):num .toString().indexOf('.') != -1 ? 
num.toString().replace(/(\d)(?=(\d{3})+\.)/g, function($0, $1) { return $1 + ","; })
: num.toString().replace(/(\d)(?=(\d{3}))/g, function($0, $1) { return $1 + ","; })

固然正則確定用的不止這些地方,還有不少咱們想不到的地方也能夠使用,只是目前來講,我常使用的就這些,還有一些不經常使用的就不寫出來了,若是有須要,請拿走,謝謝!!!code

相關文章
相關標籤/搜索