var str = "[email protected]"; // true but coming false
var str1 = "[email protected]";
var str2 = "[email protected]";
var str3 = "[email protected]";
var patt = new RegExp("[a-z0-9._% -] @[a-z0-9.-] ?[\.com]?[\.org]?[\.co.uk]?[\.org.uk]$");
console.log( str " is " patt.test(str));
console.log( str1 " is " patt.test(str1));
console.log( str2 " is " patt.test(str2));
console.log( str3 " is " patt.test(str3));
誰能告訴我錯誤是什么,我的 .com 示例無法正常作業
uj5u.com熱心網友回復:
你需要
- 分組構造而不是字符類
- 正則運算式文字符號,因此您不必雙重轉義特殊字符
- 模式開始處的
^錨點,因為您需要兩者^并$讓模式與整個字串匹配。
所以你需要使用
var patt = /^[a-z0-9._% -] @[a-z0-9.-] ?(?:\.com|\.org|\.co\.uk|\.org\.uk)$/;
請參閱正則運算式演示。
如果您需要使其不區分大小寫,請添加i標志,
var patt = /^[a-z0-9._% -] @[a-z0-9.-] ?(?:\.com|\.org|\.co\.uk|\.org\.uk)$/i;
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/504296.html
標籤:javascript 正则表达式 电子邮件 电子邮件验证 光环.js
