首页 > 解决方案 > 从 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 函数。谢谢你的帮助。

问候。

标签: javascriptextractgoogle-tag-manager

解决方案


这应该为您完成工作String

strObj.match( '(?<=\\()[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+\\.[a-zA-Z0-9._-]+(?=\\))' )[0];

推荐阅读