PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : character array von Sonderzeichen bereinigen



7.e.Q
04-04-2005, 13:33
Hallo,

wie geht man am ehesten vor, um Zeichenketten (Character Arrays) von Sonderzeichen, wie Zeilenumbrüchen und allem anderen, was nicht sichtbar ist, zu bereinigen? Also alle Zeichen zu entfernen, die nicht sichtbar sind (außer Spaces innerhalb der Zeichenkette)?

bischi
04-04-2005, 14:35
ASCII-Tabelle anschauen und entsprechende Werte per Schleife rausnehmen...

MfG Bischi

almoeli
04-04-2005, 16:17
Hi,

anstatt selber die ASCII Tabelle zu durchforsten kann man sich auch von der Funktion isgraph(char) helfen lassen.
Z.b. so (ungestestet und schnell hingeschrieben, also nur als Anregung verwenden)



#include <ctype.h>


char *tok, *pos;

tok = pos = <dein_text>;
while (*tok != '\0') {
if (isgraph(*tok) || *tok == ' ') {
/* Keep char */
*pos = *tok;
pos++;
}
tok++;
}
/* Terminate string */
*pos = '\0';


Grüsse

almoeli

Pingu
04-04-2005, 16:30
oder einfach alles rausschmeißen was kleiner 0x20 ist (Ausnahme: 0x00).

Pingu