簡體   English   中英

將字符串中的每個單詞的首字母大寫。 本地化問題

[英]Capitalizing First Letter for each word in string. Localization issue

我正在使用此功能將字符串中的第一個單詞大寫

function capitalizeFirstLetter(str) {
  return str.replace(/\w\S*/g, function (txt) { 
    return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase(); 
  });
}

它適用於英語單詞,但是當我嘗試使用非英語首字母鍵入單詞時,它會將前兩個字母變為大寫

輸入字符串:“şanlıurfa”
輸出字符串:“ŞAnlıurfa”

我只想大寫第一個字母。

謝謝。

正則表達式是導致此問題的原因,它不是選擇第一個字符(如果它是特殊字符),而是將其更改為\\S+根據需要工作。 這是一個工作的jsfiddle

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM