テキスト領域内のすべて大文字のテキストを小文字に変換するスクリプトを適応させようとしています (最初の単語を大文字にします)。私の問題の一部はここで解決されました。
それは機能しますが...私のテキストエリアのテキストは、ダッシュ、スペース、TEXTの形式です。
- TEXT1 - TEXT2
-
TEXT3
私が持っているスクリプトと .replace ロジックは、「-」とスペースを考慮しておらず、各行を個別に考慮していません。
ここにスクリプトがあります:
$(window).load(function(){
$('#normalize').click(function capitalizeSentences(){
var capText = $("#finaltext").val();
capText = capText.toLowerCase();
capText = capText.replace(/\.\n/g,". [-<br>-]. ");
capText = capText.replace(/\.\s\n/g,". [-<br>-]. ");
var wordSplit = '. ';
var wordArray = capText.split(wordSplit);
var numWords = wordArray.length;
for(x=0;x<numWords;x++) {
wordArray[x] = wordArray[x].replace(wordArray[x].charAt(0),wordArray[x].charAt(0).toUpperCase());
if(x==0) {
capText = wordArray[x]+". ";
}else if(x != numWords -1){
capText = capText+wordArray[x]+". ";
}else if(x == numWords -1){
capText = capText+wordArray[x];
}
}
capText = capText.replace(/\[-<br>-\]\.\s/g,"\n");
capText = capText.replace(/\si\s/g," I ");
$("#finaltext").val(capText);
});
});
.replace() 部分の構文やロジックには従いません。ロジックがどのように構築されているかについての入門書はありますか? または、より正確に適用できるように、誰かが内訳を教えてくれますか?