私は、どの単語が名前であるかを検出しようとしており、その単語の最初の文字を大文字にしています。私が試したコードは次のとおりです。特定の単語の最初の文字を大文字にするには?
else if (splitInput[i].match(/a|e|i|o|u/)){
i = 0;
var up = input.indexOf("ben");
up = up + 4;
console.log("toUpperCase: " + up);
i = slotBen + 1;
var toUp = input.charAt(up);
console.log("Before uppercase: " + toUp);
var afUp = toUp.toUpperCase();
//input.charAt(up).replace(toUp, afUp);
console.log("After toUpperCase: " + afUp);
//input.replace(toUp, afUp);
console.log(input);
bubbleR.innerHTML = input;
console.log('slotBen:', slotBen);
userID.name = splitInput[i];
多少複雑すぎるかもしれませんが、私はそれを動作させることや読みやすく理解することができませんでした。関数を実行すると、それは大文字にしなければならない文字を正確に認識しますが、input
に置き換えません。ここでcodepen
テキストはオランダ語であるのですが、
編集:)ことを気にしない:このしようとする提案が持っていた:私はi = slotBen + 1;
であると
var capitalized = splitInput[i].toUpperCase() + input.substr(1);
を、それはしませんでした作業。私はそれを正しく実装したと思うが、わからない。さまざまな組み合わせを試して、どれもうまくいきませんでした。
あなたは今ので、それは(良性が同様に大文字に行くと言葉につながる)「ベン」のいずれかのoccuranceを大文字ます後と「ベン」の前にスペースを追加したい場合があります – Roberrrt
'slotBen'とは何ですか?とにかく、JS文字列は不変です。文字を "置き換える"ことはできません。新しい文字列を作成する必要があります。 'replace'は既存の文字列の文字を置き換えません。指定された置換文字列を持つ新しい文字列を作成します。あなたがドキュメントを読んだら、これはかなり明確になるはずです。より一般的には、「JavaScriptで単語を大文字にする」を検索すると、これに対するアプローチがたくさんあるはずです。 –
CSSはオプションですか?テキスト変換があります。 – moefinley