Ruby entspricht der PHP-Funktion ucfirst ()

8

Was ist der beste Weg in Ruby (mit Rails, falls relevant), den ersten Buchstaben einer Zeichenkette groß zu schreiben?

Beachten Sie, dass String#capitalize nicht das ist, was ich möchte, da diese Funktion neben dem Großbuchstaben des ersten Buchstabens der Zeichenfolge alle anderen Zeichen in Kleinbuchstaben verwandelt (was ich nicht möchte - ich möchte sie unberührt lassen) ):

%Vor%     
Tom Lehman 25.09.2009, 23:22
quelle

8 Antworten

15

Sie können "sub" verwenden, um zu bekommen, was Sie wollen (Hinweis: Ich habe das nicht mit Multibyte-Strings getestet)

%Vor%

(und Sie können natürlich String String hinzufügen, um dies als eine Methode hinzuzufügen, wenn Sie möchten)

    
Greg Campbell 25.09.2009, 23:44
quelle
14

In Rails haben Sie die Methode String#titleize :

"testing string titleize-Methode" .titleize # = & gt; "Testing String Titerize-Methode"

    
khelll 26.09.2009 03:04
quelle
6

Geben Sie das erste Zeichen in Großbuchstaben ein und speichern Sie es in der Zeichenfolge

%Vor%

Oder

%Vor%     
glenn jackman 26.09.2009 18:32
quelle
3

Wenn Sie die ursprüngliche Zeichenfolge nicht ändern möchten, können Sie dies folgendermaßen tun:

%Vor%     
Max Masnick 23.03.2010 15:33
quelle
1

Wenn Sie nach einer echten ähnlichen Funktion wie PHPs ucfirst() suchen, versuchen Sie

%Vor%

führt zu " A A ".

%Vor%

führt zu " A New Approach ".

Sie können die String-Klasse um Folgendes erweitern:

%Vor%     
WorkingDevel 08.03.2013 03:39
quelle
1

Seit Schienen 5:

%Vor%

Ссылка

    
Swards 17.10.2017 20:54
quelle
0

Sehen Sie sich das an.

Großschreibung - erster Buchstabe jedes Wortes

Es gibt keine eingebaute Funktion. Sie müssen die Buchstaben aufteilen und wieder zusammenkommen oder versuchen, Rails 'String # titleize und sehen, ob es tut was Sie wollen.

    
Trevor Tippins 25.09.2009 23:30
quelle
0

Ich schlage die folgende Lösung vor, funktioniert durch Leerzeichen

%Vor%     
firedev 15.08.2016 10:43
quelle

Tags und Links