我目前正在开发一个项目,我必须根据一些具有各种字符的通用字符串,在 JavaScript 中动态生成一些电子邮件地址。
假设我有几个组名称:
var groupname1: "This is my first group";
var groupname2: "This.is.yet@another@!#¤%&/() group";
我需要弄清楚要从名称中删除哪些字符,以便使它们在电子邮件中有效
function removeWeirdCharsAndReturnEmailAddress(name){
var emailValidString = [DO REGEX/OTHER MAGIC HERE];
return emailValidString + '@domain.org';
}
最佳答案
试试这个。它将根据您的问题考虑“@”左侧的内容,并删除非电子邮件正文字符。我使用的正则表达式并不完美。您可以根据您的要求进行定制:
function removeWeirdCharsAndReturnEmailAddress(name){
var indexOfAt = name.indexOf("@");
var s = '';
if (indexOfAt > -1)
s = str.substring(0, indexOfAt);
else
s='do something in case no @ in string';
var acceptedString = '';
for (var i = 0, len = s.length; i < len; i++) {
if (isValidEmailCharacter(s[i])) acceptedString += s[i];
}
return acceptedString + '@domain.org';
}
function isValidEmailCharacter(s){
var re = /[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]/;
return re.test(s);
}
关于javascript - 创建有效的电子邮件地址字符串(仅需要 @sign 的左侧),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38240316/