javascript - 从 Javascript 中的字符串中提取电子邮件地址(谷歌标签管理器功能)
问题描述
我正在寻找一种从我已经存储在 Google Tag Manager 变量中的字符串中提取电子邮件地址的方法。我是 Javascript 新手,我尝试了一些在互联网上找到的函数,但它们都返回“未定义”
例子 :
function findEmailAddresses(StrObj) {
var separateEmailsBy = ", ";
var email = "<none>"; // if no match, use this
var emailsArray = StrObj.match(/([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\\.[a-zA-Z0-9._-]+)/gi);
if (emailsArray) {
email = "";
for (var i = 0; i < emailsArray.length; i++) {
if (i != 0) email += separateEmailsBy;
email += emailsArray[i];
}
}
return email;
}
我的字符串是:' You are now logged as John Doe (john.doe@gmail.com) '(不正确的字符与 fontawesome 库问题有关,很快就会修复)我想运行一个 JS/标签管理器函数只返回 john.doe@gmail.com
Google 跟踪代码管理器函数不应使用库,而应是使用“return”语句返回值的 JavaScript 函数。谢谢你的帮助。
问候。
解决方案
这应该为您完成工作String
:
strObj.match( '(?<=\\()[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\\.[a-zA-Z0-9._-]+(?=\\))' )[0];
推荐阅读
- node.js - 如何调用 express 来触发外部重定向并避免 COR
- java - 有没有办法将公共 jar URL 作为 maven 依赖项包含在内?
- python - 如何通过仅选择每小时的最后一行来过滤数据框?
- reactjs - React/Jest/Enzyme 如何模拟组件中服务的 API 调用?
- swift - 自从更新到 swift 5 后关闭工作表
- python - 当 na 在 pandas 列中时如何重置 cumprod
- docker - 扩展 CouchDB Docker 镜像
- bootstrap-4 - 如何使引导 4 表在整个行中保持宽度?
- python - 无法使用 [OpenCV] cv2.VideoCapture.set() 设置帧宽度和高度
- python-3.x - 尝试使用 Win32com.client.Dispatch() 使用 ProgID "QBXMLRP2Lib.RequestProcessor2" 连接到 Quickbooks 时出现错误