我需要有关正则表达式的帮助,才能从此url仅获取代码参数:
URL: code=4%2FsAB_thYuaw3b12R0eLklKlc-qcvNg6f8E8pgvu_02MTTJE0NOcyvXkrTQrB3QK8209wSbIpLDEBrk8vUGYKQ41I&scope=https:.....
我的代码:
getParameterByName(name) {
var url = window.location.href;
name = name.replace(/[\[\]]/g, '\\$&');
var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$|)'),
results = regex.exec(url);
if (!results) return null;
if (!results[2]) return '';
return decodeURIComponent(results[2].replace(/\+/g, ' '));
}
这段代码返回`
4/sAB_thYuaw3b12R0eLklKlc-qcvNg6f8E8pgvu_02MTTJE0NOcyvXkrTQrB3QK8209wSbIpLDEBrk8vUGYKQ41I
在这种情况下,我需要将第一个也是唯一的反斜杠用作%符号。
我无法正常工作。
提前感谢!
答案 0 :(得分:1)
对我有用!
SharedPreferences
答案 1 :(得分:0)
未经测试的JavaScript正则表达式:
var myRe = /=(.*)&/igm
var url = 'code=4%2FsAB_thYuaw3b12R0eLklKlc-qcvNg6f8E8pgvu_02MTTJE0NOcyvXkrTQrB3QK8209wSbIpLDEBrk8vUGYKQ41I&scope=https:';
var code = myRe.exec(url);
答案 2 :(得分:0)
使用\bcode=([^&]+)
。确保使用单词边界'code ='捕获代码查询,然后捕获所有字符,直到达到&
或末尾为止。
此处测试正则表达式:https://regex101.com/r/eSnB4S/1