Re: Problem mit strx.Lcase Kategorie: Programmierung (von Udo - 17.02.2005 12:28) | ||
Als Antwort auf Problem mit strx.Lcase von Holger - 13.02.2005 19:04 | ||
| ||
> Hallo, > > ich habe ein Problem mit strx.Lcase > Ich hab versucht: > > > string data; > data = "TEST"; > > strx.Lcase(data,0,4); > > > data enthält "test". Das ist ok. > > aber: > > string data; > data = "TesT"; > > strx.Lcase(data,0,4); > > > > > data enthält aber danach nur Müll: t�t > > Scheinbar prüft die Funktion nicht, ob bereits Kleinbuchstaben im String vorhanden sind. > > Bug oder Feature ? > > > Holger > > Hallo, eigentlich sollte das nicht passieren. Das Gute bei der verwendeten Sprache ist, dass man bei solchen Fehlern einfach selbst im entsprechenden Modul nachsehen kann. So befindet sich im Modul strx.c2 in der Funktion Lcase folgende Zeile: if s[i]>=65 and s[i]<=90 s[i]=s[i]+32; D. h. es werden nur ASCII Codes angefasst, deren Wert zwischen 65 (A) und 90 (Z) liegt. Umlaute werden separat behandelt. Vielleicht hast Du ein älteres Modul, in dem diese Abfrage noch nicht enthalten ist. Oder Du hast ein Neueres, in dem diese Abfrage (aus welchen Gründen auch immer) nicht mehr vorhanden ist. Dies ist jedenfalls die Richtung, in der Du den Fehler suchen musst. Im Zweifelsfall kannst Du diese Abfrage auch ganz einfach selbst einbauen. Gru� Udo | ||
Antwort schreiben Antworten: Re: Problem mit strx.Lcase (von Holger - 17.02.2005 14:03) Re: Problem mit strx.Lcase (von Udo - 17.02.2005 15:29) Re: Problem mit strx.Lcase (von Holger - 17.02.2005 16:01) Re: Problem mit strx.Lcase (von Udo - 18.02.2005 10:46) Re: Problem mit strx.Lcase (von Holger - 20.02.2005 19:37) |