首页 > 解决方案 > 匹配 URL 中的数字

问题描述

我希望能够在不使用后视 (?<=) 的 url 之间提取一组数字,因为我刚刚意识到并非所有浏览器都支持它。

网址: https ://example.com/img/33421/contact_1739081.jpeg?mod=12741-1385

我想提取contact_和.jpeg之间的'1739081'

最初我使用了以下正则表达式: (?<=contact_)(.*)(?=.jpeg) 有效,但如上所述并非所有浏览器都支持。

是否有任何其他正则表达式方法可用于提取数字组?

标签: javascriptregex

解决方案


你可以试试正则表达式

let URL = 'https://example.com/img/33421/contact_1739081.jpeg?mod=12741-1385';
let getMatch = URL.match(/contact_(\d+)/);
if (getMatch) {
    let contact = getMatch[1];
    console.log(contact);
}else{
  console.log('No Match');
}


推荐阅读