2016-05-05 4 views
0

私の仕事は、各単語の最初の文字を除くすべてを選択し、小文字に変換することです。 1つの単純な違いを除いて、似たような話題はいくつか見つかりました私のキャラクターはラテン・エクステンションで、それらの表現は私にとってはうまくいかない。javascript reg ex各単語の最初の文字を除くすべてを選択する(ラテン語の拡張文字)

テキスト例:

Kazlų Rūda, Žiežmarių raj. 

最高のは、私が思いついた:あなたの助けを事前に

/\B[\u00C0-\u1FFF\u2C00-\uD7FF\w]/g 

おかげ

Kazlų RŪDA, ŽIEŽMARIŲ raj. 

そして私は、このような結果を必要としています。

+0

可能な重複ユニコードの文字列を "タイトルケース"に変更](http://stackoverflow.com/questions/11933577/javascript-convert-unicode-string-to-title-case) – Laurel

答えて

1

あなたはそれをこのよう

var str = "Kazlų RŪDA, ŽIEŽMARIŲ raj."; 
str = str.replace(/(^\S|\s\S)(\S+)/g , function(m,p1,p2){ return p1+p2.toLowerCase(); }); 
// output: "Kazlų Rūda, Žiežmarių raj." 
1

を行うことができますあなたの正規表現パターンがちょうど小文字に必要なすべての文字を変換するためにコールバックしてString.replace機能を使用し、良いです:[Javascriptの変換の

var str = 'Kazlų RŪDA, ŽIEŽMARIŲ raj'; 
str = str.replace(/[\u00C0-\u1FFF\u2C00-\uD7FF\w]+/g, (m) => m[0] + m.substr(1).toLowerCase()); 

console.log(str); // "Kazlų Rūda, Žiežmarių raj" 
関連する問題