2016-04-10 17 views
0

Ich bin neu in RegEx und ich suche nach einer Möglichkeit, Sätze zu vergleichen, in denen der erste Buchstabe großgeschrieben wird und der Rest in Kleinbuchstaben ist.Großgeschriebene Wörter mit regulärem Ausdruck

Ich habe ein paar Dinge ausprobiert (IF-Anweisungen enthalten), aber ich kann es einfach nicht bekommen.

Dies ist meine letzte Version:

(([A-Z])([a-z]+\s|[a-z]+))+ 

Ich dachte, es zuerst gearbeitet, aber nun Großbuchstaben in der Mitte des Wortes zu akzeptieren.

Die Ausgabe wäre so (jedes Wort groß geschrieben).

Danke !!

Antwort

0

Der Ausdruck akzeptiert Großbuchstaben in der Mitte der Welt, da jetzt die Leerzeichen zwischen Wörtern optional sind und Wörter ineinander laufen können.

Sie können einen strukturierteren Ansatz wählen: Ein Satz muss mindestens ein Wort enthalten. Das ist

[A-Z][a-z]* 

Nach diesem ersten Wort können Sie eine beliebige Anzahl von mehr Wörtern erhalten, denen jeweils Leerzeichen vorausgehen. Also insgesamt:

[A-Z][a-z]*(\s[A-Z][a-z]*)* 
Verwandte Themen