0

我有一个字符串:

User_TimeStamp=20120712201112&email_id=ufe.test20@markit.com&resetCode=**uNcoHR9O3wAAB46xw**&reset=true

我尝试并搜索了很多以获取突出显示的文本。基本上我想要一个 JavaScript 正则表达式来获取 和 之间的所有resetCode=字符&reset=true

对此的任何帮助都将受到高度赞赏。

谢谢

4

4 回答 4

1

两种方式:

  1. 你的正则表达式应该是resetCode=([^&]*)
  2. 拆分字符串,&然后遍历每个字符串,然后=将第一个字符串与第二个字符串进行比较resetCode并在找到时返回第二个字符串。
于 2012-07-12T23:22:30.790 回答
1

在您正在寻找resetCode变量的地方尝试此代码

var resetCodeValue;
var s = window.location.split('&');
for(var k in s) { var pair = s[k].split('=');
   if (pair[0] == 'resetCode'){
      resetCodeValue = pair[1];
   }
}
于 2012-07-12T23:24:32.980 回答
1

你可以做一些更“可读”的事情:

retrieveDesired = User_TimeStamp.split('=')[3].split('&')[0];

jsBin 演示

于 2012-07-12T23:26:05.677 回答
0

为什么不直接使用这个方便的函数来获取 resetCode 的值

function getUrlVars() {
    var vars = {};
    var parts = window.location.href.replace(/[?&]+([^=&]+)=([^&]*)/gi, function(m,key,value) {
        vars[key] = value;
    });
    return vars;
}
document.write(getUrlVars()["resetCode"]);
于 2012-07-12T23:19:42.057 回答