考虑到我在 JavaScript 中使用 .replace 更改了该单词中间的另一个字符,我如何在特定单词之前添加一个字符?

How can I add a character before a specific word, considering that I change another character in the middle of that word using .replace in JavaScript?

我有一个代码可以用其他字符替换特殊字符,但我需要在那个词之前添加另一个字符。例如,

我有一个词:"zài",我把它改成:"zai",但我需要:"azai"

所以一个 "a" 应该放在那个词之前。谢谢。

var charac = function(txta, txti) {
  var str = document.getElementById("demo").innerHTML; 

  var txta = str.replace(/ā/gi, "a").replace(/ē/gi, "e");
  var txti = str.replace(/á/gi,"a").replace(/é/gi, "e");

  var cum = str.replace(str, txta).replace(str, txti);

  document.getElementById("demo").innerHTML = cum;
};
var str= 'hello zāi hi ē sure á ikr é'
var words = str.split(' ');
words.map(function(word){
 if(word.match(/[āáēé]/g)) return 'a' + word;
 return word;
}).join(' ').replace(/[āáēé]/g, function(letter){
  switch(letter){
    case 'ā':
    case 'á':
        return 'a';
    break;
    case 'ē':
    case 'é':
        return 'e';
    break;
  }
})

感谢@Edwin 我有这个代码:

document.getElementById('replaceBtn').addEventListener('click', function(evt){
    var demo = document.getElementById('demo');
    demo.innerHTML = demo.innerHTML.split(' ').map(function(word){
        if(word.match(/[āáǎà]/g)) {
            return 'a' + word.replace(/[āáǎà]/g, 'a');
        } else if(word.match(/[ēéěè]/g)) {
            return 'e' + word.replace(/[ēéěè]/g, 'e');
        } else if(word.match(/[īíǐì]/g)) {
            return 'i' + word.replace(/[īíǐì]/g, 'i');
        } else if(word.match(/[ōóǒò]/g)) {
            return 'o' + word.replace(/[ōóǒò]/g, 'o');
        } else if(word.match(/[ūúǔù]/g)) {
            return 'u' + word.replace(/[ūúǔù]/g, 'u');
        } else if(word.match(/[ǖǘǚǜ]/g)) {
            return 'u' + word.replace(/[ǖǘǚǜ]/g, 'ü');
        } else {
         return word;
        }
    }).join(' ');
})
<p id="demo">tā yě jiù rén</p>
<button id="replaceBtn">Click</button>