首页 > 解决方案 > 如何使用正则表达式替换“href”属性中的特定 URL?

问题描述

我只想使用正则表达式替换href具有单个前导正斜杠 ( ) 的 URL 。/

这是我的字符串:

var p = '<link href="/example.com"/> <link href="//example2.com"/>';

这是我的代码,但它匹配href两个元素的属性。

var p = '<link href="/example.com"/> <link href="//example2.com"/>';
var re = /href="\//gi;
var newstr = p.replace(re, 'href="/baseurl/');

标签: javascripthtmlregexreplacehref

解决方案


尝试改用这个:

const links = `
  <a href="/example.com">Example</a>
  <a href='//example.com'>Example</a>
`;

const re = /href=(["']{1})\/{1}([^\/])/gi;

console.log(links.replace(re, 'href=$1/baseurl/$2'));

祝你好运。


推荐阅读