blob: a6fec710e47750ca0b6f001cde5e29b25986304b (
plain)
1
2
3
4
5
6
7
8
9
10
11
|
export async function replaceAsync(str, regex, asyncFn) {
const promises = [];
str.replace(regex, (match, ...args) => {
const promise = asyncFn(match, ...args);
promises.push(promise);
});
const data = await Promise.all(promises);
return str.replace(regex, () => data.shift());
}
|