我正在编写一个函数,将一个字符串中的文本替换为另一个字符串,但是它没有将字符串插入我希望的位置。
例如,在这里我想将我的ssml字符串中的“文本”更改为“不同文本”。
let ssml = `<speak><audio src="someurl.mp3"></audio> text </speak>`;
let temp = [];
for (let x = 0; x < ssml.length; x++) {
if (ssml[x] === '>') {
temp.push(x);
}
}
let firstTag = temp[temp.length - 2];
temp = [];
let secondTag = (ssml.lastIndexOf('<'));
console.log(firstTag);
console.log(secondTag);
ssml = ssml.replace(ssml.substring(firstTag, secondTag), '>' + "different text");
console.log(ssml);
我的第一个标签和第二个标签位于位置78和79,然后尝试使用此子字符串方法。但是,这段代码似乎将替换字符串放置在完全不同的位置(索引7和8)。
任何帮助都会为他们加油!