2016-05-05 21 views
0

Meine Aufgabe ist es, jeden außer ersten Buchstaben jedes Wortes zu wählen und in Kleinbuchstaben zu konvertieren. Ich habe einige ähnliche Themen mit Ausnahme eines einfachen Unterschieds gefunden. Meine Charaktere sind Latin Extended und keiner dieser Ausdrücke funktioniert für mich.Javascript reg ex Auswahl jedes außer ersten Buchstaben jedes Wortes (Latein erweiterte Zeichen)

Textbeispiel:

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

Und ich brauche ein solches Ergebnis:

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

Das Beste, was ich kam:

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

Vielen Dank im Voraus für Ihre Hilfe.

+0

Mögliche Duplikat [Javascript konvertieren Unicode-String zu "Titel Case"] (http://stackoverflow.com/questions/11933577/javascript-convert-unicode-string-to-title-case) – Laurel

Antwort

1

Sie könnten es tun, um diese Art und Weise

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

Ihre RegexMuster gut ist, verwenden Sie einfach String.replace Funktion mit einem Rückruf alle benötigten Zeichen zu konvertieren in Kleinbuchstaben:

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" 
Verwandte Themen