我有一个正则表达式来匹配 javascript 中的电子邮件地址。让我们看一个例子:
var email = "aaa@bbb.com (A,B); ccc@ddd.com (C,D); eee@fff.com (E,F);";
var emails = email.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\.[a-zA-Z0-9._-]+)/gi);
这将返回 var 电子邮件中的所有电子邮件。
现在,我有一个字符串:
var initials = "(A,B)";
而且我只想得到初始值之前的电子邮件;
如果 var initials 是“(A,B)”,那么我只想获取 aaa@bbb.com 电子邮件地址。
非常感谢您的帮助!
最佳答案
JavaScript:
var input = "aaa@bbb.com (A,B); ccc@ddd.com (C,D); eee@fff.com (E,F);";
var initials = "(A,B)";
var email = input.match(new RegExp("([a-zA-Z0-9]+(?:[-._][a-zA-Z0-9]+)*@[a-zA-Z0-9]+(?:[-.][a-zA-Z0-9]+)*)(?=\\s*" + initials.replace(/([()])/g, "\\$1") + ")"))[0];
print(email);
输出:
aaa@bbb.com
测试此代码 here .
关于javascript - 匹配特定单词之前的电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11326534/