BEARBEITEN: VB.NET-Code unten hinzugefügt
%Vor%Wenn Sie lambdas nicht verwenden können, verwenden Sie stattdessen einen MatchEvaluator:
%Vor%Es ist nicht wirklich Titel im Sinne der MS Word-Formatierung, aber nahe genug.
Sie haben die Sprache nicht angegeben, aber in C # können Sie Folgendes tun: %Vor%
Damit werden Wörter mit einem Buchstaben gut behandelt, da Substring in der Eingabe keinen Fehler wie "A" auslöst.
Warum nicht einfach die eingebaute Methode TextInfo.ToTitleCase () schon im .NET Framework?
%Vor%.NET hat dafür eine integrierte Unterstützung. Siehe TextInfo.ToTitleCase für die Dokumentation.
Mein Code enthält einige Erweiterungsmethoden für C #. Ich nehme an, dass VB.NET diese auch hat, aber ich kenne VB.NET nicht gut genug, um sie selbst zu konvertieren.
%Vor%Nicht in "reinem" Regex, aber die meisten plattformspezifischen Implementierungen haben eine Möglichkeit, dies zu tun:
Zum Beispiel in Python:
%Vor%In diesem Fall übergeben wir ein aufrufbares Lambda an die sub () -Methode (und nicht an eine Ersatzzeichenfolge), die die übereinstimmende Zeichenkette zurückgibt. Die meisten Sprachen haben eine Entsprechung, bei der Sie einen Call als "Ersatz" übergeben.
In VB.NET können Sie Ihr 'Ersatz' Lambda als Function (x) x.Value(0).ToString().ToUpper()
Sehen Sie sich den ersten Buchstaben jedes Wortes groß an und C # Großbuchstaben in String , habe ich in zwei Sprachen geschrieben, Perl und C #, weil Sie die von Ihnen verwendete Sprache nicht angegeben haben.
Sie könnten das tun, aber das ist eine ziemlich häufige Funktion in den meisten Programmiersprachen. Zum Beispiel ist die Funktion ucwords ($ word) in PHP.
Führen Sie dies bei einem Tastendruck in Ihrem Textfeld aus.
%Vor%