Ich möchte ein Wort in einer Zeichenfolge durch ein anderes Wort ersetzen, aber Code funktioniert nicht.Ersetzen von Wort in einer Zeichenfolge
HINWEIS: Bewahren Sie den Fall des ursprünglichen Wortes auf, wenn Sie es ersetzen. Wenn Sie beispielsweise das Wort "Buch" durch das Wort "Hund" ersetzen möchten, sollte es als "Hund" ersetzt werden.
Was ist falsch im Code?
function replace(str, before, after) {
// Find index where before is on string
var index = str.indexOf(before);
var dogru = before[0] === before[0].toUpperCase();
var yanlıs = after[0] === after[0].toUpperCase();
// Check to see if the first letter is uppercase or not
if (dogru !== yanlıs) {
if(dogru)
after = after.charAt(0).toUpperCase() + after.slice(1);
else
after = after.charAt(0).toLowerCase() + after.slice(1);
}
// Now replace the original str with the edited one.
var str1 = str.split(' ');
str1.splice(str1.indexOf(before),1, after);
return str1.join(' ');
}
myReplace("A quick brown fox jumped over the lazy dog", "jumped", "leaped");
'„Eine schnelle braune Fuchs sprang über den faulen Hund“.replace (‚sprang‘,‚sprang‘)' – choz
Was ist all die Groß-/Kleinmaterial für? Gibt es eine zusätzliche Anforderung im Zusammenhang mit den Wörtern? – Barmar
Sie haben die Funktion 'replace' und nicht' myReplace' benannt. Sie benötigen auch eine Variable, um das Ergebnis zu speichern. [Ansonsten funktioniert es gut] (https://jsfiddle.net/dwb9zetL/). –