Umwandlung Gross/Kleinschreibung

Hallo zusammen,

benötige kleine Hilfe bei einem programmausschnitt - Funktionsweise:

String soll übergeben werden und dann zeichenweise auf Gross/Kleinschreibung umgewandelt werden, so dass bei einer Suche in DB Suchergebnisse unabhängig der Eingabe mit Gross/Kleinbuchstaben Ergebnisse angezeigt werden kann..

muss irgendwie mit strcat([Aa]...) funktionieren... sprich: zeichenweise zerlegen und später wieder zusammenbauen...


über hilfreiche Beispiele bin ich dankbar...
 
Da du von strcat() sprichst, gehe ich mal von C/C++ aus. Schau dir mal tolower() aus der ctype.h an.
 
mit c liegst du richtig...


muss einen eingegebenen namen in zeichen zerlegen...das mach ich doch am besten in ner for-Schleife?
 
Du gehst einfach mit einem for(i=0; i<=strlen(input); i++) durch den string und machst aus jedem Buchstaben mit tolower() einen Kleinbuchstaben. Danach kannst du z.B. via strcmp() den String vergleichen.
 
Eine C++ Lösung könnte z.B. so aussehen:

Code:
void toLower(std::basic_string<char>& s) {
	for (std::basic_string<char>::iterator p = s.begin( );
		p != s.end( ); ++p) {
			*p = tolower(*p);
	}
}
 
Wenn du eine Datenbank durchsuchen willst, solltest du vielleicht vorher mal schauen, ob du die Abfrage selbst nicht einfach case-insensitive machen kannst. Dann kannst du dir das Gewurstel in C sparen...
 
Danke! Konnte es lösen!
Hab für jeden Buchstaben der Sucheingabe ein passendes Gross/Kleinbuchstabe mittels toupper/tolower erzeugt und später wieder zu einem String zusammengefügt! So lässt sich mit Gross/Kleinschreibung auf der DB suche, egal wie der Eintrag abgespeichert wurde.

bis densen!
 
Zurück
Oben