#include #include #include "etc.h" /* Positionne au début du prochain mot. Si pointe sur un mot, saute par dessus et saute les blancs suivant. Si pointe sur un blanc, saute les blancs. Si pointe sur '\0', fait rien. */ export char *str_nextword(const char *str) { if (str[0] != '\0'){ if (isspace(str[0])){ str = str_skip (str); }else{ str = str_skip(str_skipword(str)); } } return (char*)str; } /* saute un certain nombre de mot composé de caractères non blancs Retourne un pointeur vers le n'ième mot ou un pointeur vers la fin de la chaine '\0' */ export char *str_skipnword(const char *str, int nbskip) { int i; for (i=0; i ' ') str++; } while (isspace(*str)) str++; return ((char*) str); } /* Compte le nombre de mot dans une chaine */ export int str_nbword (const char *str) { int ret = 0; str = str_skip(str); while (*str != '\0'){ str = str_skip(str_skipword(str)); ret++; } return ret; } /* Copie une série de chiffre d'une chaine Retourne un pointeur vers le premier caractère après la série ou un pointeur vers la fin de la chaine '\0' */ export char *str_copydig(char *dest, const char *str) { while (isdigit(*str)) *dest++ = *str++; *dest = '\0'; return ((char*) str); }