我使用正则表达式"(.*?)"来获取字符串中引号之间的所有内容。在对exec()提供的数组运行操作后,我现在有一个由这些切片组成的数组要放回字符串。我如何使用正则表达式将这个数组Map回字符串?我知道用一个特定的值来替换它们,但是我不确定如何用数组来做。也许有某种map(),它可以从数组中获取pop()值的函数?我对Deno和JS总体来说是相当陌生的(来自更低层次的背景),所以如果我错过了一个文档或其他东西,我很抱歉。
"(.*?)"
exec()
map()
pop()
qyyhg6bp1#
将.replace与替换函数一起使用是实现所需功能的最简单方法。
.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替换模式的替换字符串
$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);
1条答案
按热度按时间qyyhg6bp1#
将
.replace
与替换函数一起使用是实现所需功能的最简单方法。您也可以使用
$n
替换模式的替换字符串