考虑到我在 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>
我有一个代码可以用其他字符替换特殊字符,但我需要在那个词之前添加另一个字符。例如,
我有一个词:"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>