2016-10-03 74 views
0

我使用這個函數來大寫單詞的第一個字母串爲字符串中的每個單詞首字母大寫。本地化問題

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

它非常適用英文單詞,但是當我試圖用非英文首字母輸入我的話,這讓前兩個在字母爲大寫

輸入字符串: 「桑尼烏法」
輸出字符串: 「桑尼烏法」

我只是想利用的第一封信。

感謝。

+0

可能重複的[正則表達式 - 什麼是正則表達式匹配外來字符?](http://stackoverflow.com/questions/3009993/regex-what-would-be-regex-for -matching-foreign-characters) – NicolasMoise

回答

1

正則表達式是什麼導致的問題,它不是選擇第一個字符,如果它是一個特殊字符,將其更改爲\S+,它會按需要工作。這是一個jsfiddle與它的工作

+0

非常感謝。很有用 –

相關問題