在deno (typescript)中通过正则表达式将部件数组映射为字符串



我使用正则表达式"(.*?)"来获取字符串中引号之间的所有内容。在对exec()提供的数组运行操作之后,我现在有了一个这些片的数组,可以放回字符串中。如何使用正则表达式将这个数组映射回字符串?

我知道用一个特定的值替换它们,但我不确定如何用数组来做。也许有某种map()需要一个函数,我可以使用pop()值从数组?

我对Deno和JS很陌生(来自更低级的背景),所以很抱歉,如果我只是错过了一个文档或其他东西。

使用.replace和替换函数是完成您想要的最简单的方法。

const html = `
<a href="https://example.com/foo">foo</a>
<div></div>
<a href="https://example.net/foo">foo</a>
`;
const result = html.replace(/"(.*?)"/g, (match, group) => {
return `"https://example.org/?url=${group}"`;
});
console.log(result);

您也可以使用$n替换模式的替换字符串

const html = `
<a href="https://example.com/foo">foo</a>
<div></div>
<a href="https://example.net/bar">bar</a>
`;

const result = html.replace(/"(.*?)"/g, `"https://example.org/?url=$1"`);
console.log(result);

相关内容

  • 没有找到相关文章

最新更新