res.match(/data-pin-url="(.*?)"/g)
匹配返回的值 ,带上配置值了,
我只想返回的时候 给我URL就行了
使用正则匹配返回的值通常是一个数组,包含所有匹配的结果。
比如
<a data-pin-url="https://example.com/1">Link 1</a>
<a data-pin-url="https://example.com/2">Link 2</a>
let res = "<a data-pin-url=\"(.*?)\">";
let matches = res.match(/data-pin-url="(.*?)"/g);
如果你只想获取匹配的URL
let url = matches[0];
js用正则表达式获取字符串中URL链接
let str = '亲,为您找到车次信息 a(http://touch.qunar.com/trainDetail.jsp?searchType=number&startstation=&endstation=&number=1111 )[请点击查看...]'
//
function httpString(s) {
var reg = /(http:\/\/|https:\/\/)((\w|=|\?|\.|\/|&|-)+)/g;
var reg= /(https?|http|ftp|file):\/\/[-A-Za-z0-9+&@#/%?=~_|!:,.;]+[-A-Za-z0-9+&@#/%=~_|]/g;
s = s.match(reg);
return(s)
}
console.log(httpString(str)[0])
// http://touch.qunar.com/trainDetail.jsp?searchType=number&startstation=&endstation=&number=1111
根据参考资料提供的代码段落和问题要求,可以通过正则表达式来只返回URL部分,忽略其他配置项的信息。具体步骤如下:
/^(?:\w+:)?\/\/([^\s\.]+\.\S{2,}|localhost[:?\d]*)\S*$/
,使用match方法匹配URL并提取。代码如下:function getUrl(url) {
let regex = /^(?:\w+:)?\/\/([^\s\.]+\.\S{2,}|localhost[:?\d]*)\S*$/
let matches = url.match(regex)
return matches[0]
}
let url = 'http://www.baidu.com/we/index.html?id=098&aaa=123&ccc=456'
console.log(getUrl(url))
完整代码如下:
function getUrl(url) {
let regex = /^(?:\w+:)?\/\/([^\s\.]+\.\S{2,}|localhost[:?\d]*)\S*$/
let matches = url.match(regex)
return matches[0]
}
let url = 'http://www.baidu.com/we/index.html?id=098&aaa=123&ccc=456'
console.log(getUrl(url))
运行结果就是只返回URL部分,忽略其他配置项的信息。
假设s是你匹配的结果,你可以再做一个s = s.split('=')[1] 将前面的切掉。