Bonjour,
il me faut parcourir une chaine pour en séparer ses composantes. Je ne sais
pas quelle fonctions de sscanf, strtok, ... je dosi utiliser. La chaine que
je dois parcourir, si je l'appelle <message>, à une structure en pseudo BNF
comme ceci :
<message> ::= [':' <command> <SPACE> ] <command> <params> <crlf>
<command> ::= <letter> { <letter> } | <number> <number> <number>
<SPACE> ::= ' ' { ' ' }
<params> ::= <SPACE> [ ':' <trailing> | <middle> <params> ]
<middle> ::= <Any *non-empty* sequence of octets not including SPACE
or NUL or CR or LF, the first of which may not be ':'>
<trailing> ::= <Any, possibly *empty*, sequence of octets not including
NUL or CR or LF>
<crlf> ::= CR LF
Mon problème est la gestion des paramètres optionnels (entre crochets),
notamment pour <param>. Comment programmer un tel "parser" ?
Cordialement.