我正在尝试调整一个脚本,将文本区域中的所有大写文本转换为小写(第一个单词大写)。我的部分问题在这里得到了解决。
它可以工作,但是...我的 textarea 文本采用以下格式:破折号、空格,然后是 TEXT。
-文本
1 -
文本 2 - 文本 3
我拥有的脚本和 .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() 部分中的语法或逻辑。是否有关于如何构建逻辑的入门书,或者有人可以给我一个细分,以便我可以更准确地调整它?