Input/Output Wortanfang groß schreiben

Incognito_02

Mitglied
Hi Leute,

ich habe aktuell folgendes Problem:

ich lasse von einer externen Funktion einen String befüllen. Dieser String kann mit folgenden Möglichkeiten theoretisch befüllt werden:
"test variable"
"GOßERTEST"
"Kleiner test"

Nun würde ich gerne diesen String umwandlen so das jedes Wort mit einem Großbuchstaben beginnt und der Rest klein geschrieben wird. Also in etwa so:
"Test Variable"
"Großertest"
"Kleiner Test"

Ich weiß das es in PHP eine funktion dafür gibt die ucwords() heißt. gibt es denn sowas auch für java? Oder wie kann ich das am besten Realisieren?

Gruß

Inocgnito_02
 
Wäre es möglich, dass du zwei Strings einliest und die einfach zusammensetzt?
Ich kenne deine externe Funktion ja nicht, aber das fällt mir da so spontan ein.
Bsp: "Kleiner test" == "Kleiner" + "Test"
 
Eine ganz simple und premitive methode wäre:

Java:
String derUmzubauendeString = "groß schreib Test";

Char[] kleineBuchstaben = {a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z};
Char[] großeBuchstaben = {A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z};

String [] temp = derUmzubauendeString.split(" ");

for( int i=0; i<temp.lenght ; i++){

for(int j=0; j< kleineBuchstaben.lenght; j++){
if( temp[i].charAt(0) == kleineBuchstaben[j] ){

String tmpString = großeBuchstaben[j]+temp[i].substring(1);

temp[i] = tmpString;

break;
}//ende if
}//ende innere schleife

}//ende äußere forschleife


}

String neuerString="";

for( int i=0; i<temp.lenght ; i++){

neuerString = neuerString + " " +temp[i];

}

Aber wie gesagt, sehr simpel gehalten und alles andere als elegant ^^
 
meine schnell gebaute Lösungsmöglichkeit:

Java:
String klein = "ein langer satz ohne gRoßbucHstaben aM AnfanG, wird zU eiNem Satz, inDEm jedeS neUE worT groß-, und danach kLEIN geschriebeN wird.";
		String[] help = klein.split(" ");
		for (int i = 0; i < help.length; i++) {
			help[i] = help[i].substring(0, 1).toUpperCase()
					+ help[i].substring(1, help[i].length()).toLowerCase() + " ";
			System.out.print(help[i]);
		}
PHP:
Ein Langer Satz Ohne Großbuchstaben Am Anfang, Wird Zu Einem Satz, Indem Jedes Neue Wort Groß-, Und Danach Klein Geschrieben Wird.
 
Zuletzt bearbeitet:
Hey Leute,

danke für die schnelle Hilfe von euch allen. 🙂

@vfl_freak
Danke für deinen Tipp, doch das hat mir leider nicht geholfen da mein String immer aus mehreren Zeichen besteht und ich nicht alle groß schreiben möchte, aber trotzdem danke.

@T7V
Nein, leider bekomme ich einen kompletten String mit mehreren Wörten zurück, leider kann ich den String nicht später zusammen setzen.

@F.S.WhiTeY
Danke für deine Funktion, sieht zwar schon ganz gut aus, habe aber angst das die durch die 2 for-Schleifen dann doch etwas zu unperformant wird. Aber deine Lösung hätte ich vorerst genommen wenn jgh nicht gekommen wäre. ;-)

@jgh
Danke für deine schnell gebaute Lösungsmöglichkeit, genau an sowas habe ich gedacht. Da hätte ich eigentlich auch selbst drauf kommen können, aber naja bin normalerweise ein fauler PHP-Entwickler, wir haben dafür schon eine fertige Funktion. Nochmal vielen dank an dich, ich werde es sofort Testen. ;-)

Gruß

Incognito_02
 

Neue Themen


Zurück
Oben