js驗證郵箱的正則表示式
最近小小研究了一下正則表示式,覺得寫正則表示式還挺有意思的。
今天想自己試著寫一下郵箱驗證,這個其實網上已經很氾濫了,而且各種版本,各種不一樣,我按照自己的理解寫了一個。
首先要先分析一下郵箱格式:第一部分 @ 第二部分(域名)
第一部分:1.只能以數字或字母開頭
[^a-zA-Z\d]+ 重複方式用‘+’是因為要以這個開頭嘛,至少要出現一次
2.可以包含特殊字元"_","-",".",但是這幾個字元不能連續出現,並且也不能出現在@符號的前面
([-_\.][a-zA-Z\d]+)*
@ 這裡特殊字元可以出現但是不能連續出現,並且不能出現在@符號之前,這一整串字元可以沒有,所以重複方式用‘*’
第二部分:1.仍然不能以特殊字元開頭
[a-zA-Z\d]+ 我不知道會不會有小夥伴跟我一樣說怎麼不直接用\w,表示所有的字元呢?請注意\w是包含下劃線‘_’的
2. 一般郵箱最後應該是xxx.xx吧,. 後面的字元一般是兩個或三個,四個很少。
\.[a-zA-Z\d]{2,4}$
差不多 就是這樣了,下面貼一下完整的正則表示式吧。
<span style="font-size:18px;">var regEmail = /^[a-zA-Z\d]+([-_\.][a-zA-Z\d]+)*@[a-zA-Z\d]+\.[a-zA-Z\d]{2,4}$/;
var str = " [email protected]";//測試
alert(regEmail.test(str));
</span>
大家可以多輸入幾組測試一下。
相關推薦
js驗證:正則表示式
$.extend($.fn.validatebox.defaults.rules,{ //驗證中文 CHS:{ validator:function(value){ return /^[\u0391-\uFFE5]+$/.test(value); }, message:"只能輸入
ASP.NET開發中主要的字元驗證方法-JS驗證、正則表示式、驗證控制元件、後臺驗證
在ASP.NET開發中主要的驗證方法收藏 <1>使用JS驗證 匹配中文字元的正則表示式: [\u4e00-\u9fa5] 匹配雙位元組字元(包括漢字在內):[^\x00-\xff] 備註:可以用來計算字串的長度(一個雙位元組字元長度計2,ASCII字元計1) 匹配空白行的正則表示式:\n\s
js實驗-表單驗證(正則表示式)
<!DOCTYPE html> <html lang="en"> <head> <title>Document</title> </head> <script src="./1.js"></s
驗證URL連結和IP有效性的JS程式碼(正則表示式)
#js驗證一個URl字串是否有效 function isValidURL(url){ var urlRegExp=/^((https|http|ftp|rtsp|mms)?:\/\/)+[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+
JS的常用正則表示式 驗證密碼使用者名稱等JS正則
JS的正則表示式 //校驗是否全由數字組成 function isDigit(s) { var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) return false return true } //校驗登入名:只能輸入5-20個以字母開頭、可帶數字、“_
js中使用正則表示式驗證表單欄位
JavaScript中對正則表示式的支援正則表示式在JS的最大用處就是驗證表單欄位,如驗證數字,驗證郵件和驗證漢字等。 JavaScript中對正則表示式的支援是通過RegExp類實現的。你可以以如下方式建立一個正則表示式: var regex=new RegExp("^
vue.js手機號正則表示式驗證
getCode() { if (this.mobile === '') { this.$vux.toast.show({ type: 'text', text: '請輸入手機號',
JS的常用正則表示式 驗證密碼
JS的正則表示式 強:字母+數字+特殊字元 ^(?![a-zA-z]+$)(?!\d+$)(?![[email protected]#$%^&*]+$)(?![a-zA-z\d]+$)(?![[emai
js驗證漢字正則表達式
ava ack logs back body 表達式 color utf bsp <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8">
JS應用之正則表示式
定義 正則表示式是用於匹配字串中字元組合的模式。 建立正則表示式 兩種方式: 1.new RegExp() let pattern1 = new RegExp('cat'); //第一個引數字串 let pattern2 = new RegEXP('cat', 'ig'); //第二個引數可選模式
淺談js中的正則表示式
很多時候多會被正則表示式搞的暈頭轉向,最近抽出時間對正則表示式進行了系統的學習,整理如下: 正則表示式的建立 兩種方法,一種是直接寫,由包含在斜槓之間的模式組成;另一種是呼叫 RegExp 物件的建構函式。 兩種方法的建立程式碼如下: // 直接建立 const regex1 = /ab+c/; co
http://www.cnblogs.com/chenmeng0818/p/6370819.html js中的正則表示式入門
http://www.cnblogs.com/chenmeng0818/p/6370819.html js中的正則表示式入門 什麼是正則表示式呢? 正則表示式(regular expression)描述了一種字串匹配的模式,可以用來檢查一個字串是否含有某
JS中的正則表示式小結
首先,讓我們看看兩個特別的字元:'^' 和'$' 他們是分別用來匹配字串的開始和結束,一下分別舉例說明: "^The": 匹配以"The"開頭的字串; "of despair$": 匹配以"of despair" 結尾的字串
js筆記(正則表示式續)
//\b 單詞邊界 //\B 非單詞邊界 例5: var reg = /\bcde\B/g; str = "abc cdefgh"; //str.match(reg) 返回結果為"cde" //\t匹配的不是視覺上的縮排,而是內容上的\t 同理:\n 也是
java郵箱正則表示式
package com.Janson.test; /** * @author Janson */ import java.util.regex.*; public class test { public static boolean checkEmaile
JS中的正則表示式/RegExp型別總結
在我看來,正則表示式最主要的作用就是匹配字串,可以用來驗證表單的輸入等功能。不瞭解正則表示式的或者想詳細學學正則表示式的可以參考這篇文章教學:http://deerchao.net/tutorials/regex/regex.htm。 JS通過RegExp型別來支援
JS常用的正則表示式
使用者名稱由6-18位的字母數字下劃線組成,不能由數字開頭 var r_name=/^[a-z]\w{5,17}$/i 密碼長度不能少於六位 var r_pwd
從零開始的全棧工程師——js篇(正則表示式)
正則 就是一條規則 用來檢驗字串的格式 目標就是字串 只要是通過表單提交的資料 都是字串1.正則定義var reg = new RegExp( )var reg = /格式/ <--簡寫 2.正則的方法兩大功能:一個是匹配 匹配成功就是true 第二個是捕獲 如果有就拿出來test(
JS: RegExp(正則表示式)
RegExp語法(包含ES2018標準) 注意:本次所有程式碼都僅在Chrome 70中進行測試 正則表示式是什麼? 正則表示式是用於匹配字串中字元組合的模式。(mdn) 簡單來說,正則表示式是用來提取、捕獲文字(匹配字元)的。 建立: 字面量:let regex = / pattern / flag
js中字串正則表示式、正則法則pattern、RegExp、flags、exec
全棧工程師開發手冊 (作者:欒鵬) js中字串正則表示式 正則法則的應用 正則表示式 = /pattern/flags 其中flags中g表示匹配全部,i表示不區分大小寫,m表示匹配多