javascript - 匹配特定单词之前的电子邮件地址

标签 javascript regex email-validation

我有一个正则表达式来匹配 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/

相关文章:

java - java中的电子邮件验证

javascript - 当图表准备好/渲染时如何隐藏 cytoscape 节点?

smtp - 使用 SMTP 验证来验证电子邮件地址是一种好的做法吗?

javascript - 使用 javascript 比较屏幕上的 2 条记录

regex - 包含不以特定字符开头的序列的字符串的正则表达式

c# - 如何过滤除特定白名单之外的所有 HTML 标签?

javascript - 正则表达式和 JavaScript 字符串

javascript - Javascript 字段验证循环

javascript - 从 UIWebView W/Swift 将多个 Div 元素的属性获取到我的 iOS 应用程序中

javascript - 在Jquery代码Rails中使用Link_to