我有一个字符串:
function test(){
var datas = "http://localhost/test/test.html?src=www.123@gmail.com(testing)";
var spl = datas.match(/[^src=]?\b*/g);
document.getElementById('demo').innerHTML = spl;
}
test();

<p id="demo"></p>
&#13;
我在src=
字符串匹配后需要整个字符串。我需要像www.123@gmail.com(testing)
这样的答案。请帮助我...纠正我的代码
答案 0 :(得分:0)
您可以使用JavaScript RegExp原型中的正则表达式capturing groups和exec()函数。
例如,以下代码将在第一次出现src=
后提取所有内容,或者如果提供的字符串不匹配则返回null
。
function extract(str) {
var regex = /^(?:.*src=)(.*)$/i;
return regex.test(str) ? /^(?:.*src=)(.*)$/i.exec(str)[1] : null;
}
document.getElementById('demo').innerHTML = extract('http://localhost/test/test.html?src=www.123@gmail.com(testing)');
检查此正则表达式的说明,并在https://regex101.com/r/zW1lK8/1
处测试不同的字符串答案 1 :(得分:0)
这是一种方法。你肯定需要查找一些关于使用正则表达式的在线教程。
var datas = "http://localhost/test/test.html?src=www.123@gmail.com(testing)";
var m1 = datas.match(/[&?]src=([^&]+)/);
var spl = "notfound";
if (m1 && m1.length>1) spl=m1[1];
document.getElementById('demo').innerHTML = spl;