繁体   English   中英

在JavaScript中获取Cookie中的破折号后获取价值

[英]get value after dash in Get Cookie in Javascript

我正在获得Cookie的价值,

问题:仅需打印破折号后的值,例如:

钥匙:AGC

值:@ MALLAPS-MCO

通过尝试下面的代码,我将获得完整的值“ @ MALLAPS-MCO ”,而不是仅获得MCO

JS:

 function getCookie(name){
        var pattern = RegExp(name + "=.[^;]*")
        matched = document.cookie.match(pattern)
        if(matched){
            var cookie = matched[0].split('=')
            return cookie[1]
        }
        return false
    }

感谢您的帮助。

您的带有= split()会使您达到值“ @ MALLAPS-MCO” ,您需要再次split() ,如下所示:

function getCookie(name){
    var pattern = RegExp(name + "=.[^;]*")
    matched = document.cookie.match(pattern)
    if(matched){
        var cookie = matched[0].split('=')
        //split "@MALLAPS-MCO" again using "-" as delimiter
        return cookie[1].split("-")[1];
    }
    return false
}

您也可以只使用一个正则表达式解决此问题:

function getCookie(name){
    var pattern = RegExp(name + "=.[^;]*")
    matched = document.cookie.match(pattern)
    if(matched){
        var pattern = ".*-(.*)"
        return matched[0].match(pattern)[1]; 
    }
    return false
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM