Recherche de chaîne de caractères en C
Bonjour à tous!
Je désire écrire un programme en C qui me permet de:
-> lire la source d'une page html, d'y chercher toutes les chaînes de caractères suivantes:"<a href=", "<img src="
-> modifier ce qu'il y a à la suite de celles-ci
-> générer la nouvelle page html
Je suis novice en programmation, c'est pourquoi je vous demande d'y ajouter des commentaires.
Merci
Je désire écrire un programme en C qui me permet de:
-> lire la source d'une page html, d'y chercher toutes les chaînes de caractères suivantes:"<a href=", "<img src="
-> modifier ce qu'il y a à la suite de celles-ci
-> générer la nouvelle page html
Je suis novice en programmation, c'est pourquoi je vous demande d'y ajouter des commentaires.
Merci
A voir également:
- Recherche de chaîne de caractères en C
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Caractères ascii - Guide
- Caractères spéciaux - Guide
- Chaine tnt gratuite sur mobile - Guide
- Utorrent recherche de pairs ✓ - Forum Téléchargement
7 réponses
Salut.
Ta question n'es pas assez precise pour qu'on puisse y repondre pertinemant.
Ta page HTML, ellle est locale ou distante ?
pour faire les recherche, moi j'utiliserai la STL string qui permet de faire des recherches dans un texte, mais c'est en C++, peut être que strinh.h te permet de faire pareil en C...
si tu as des questions plus precise sur comment faire, j'y repondrai avec plaisir.
Ta question n'es pas assez precise pour qu'on puisse y repondre pertinemant.
Ta page HTML, ellle est locale ou distante ?
pour faire les recherche, moi j'utiliserai la STL string qui permet de faire des recherches dans un texte, mais c'est en C++, peut être que strinh.h te permet de faire pareil en C...
si tu as des questions plus precise sur comment faire, j'y repondrai avec plaisir.
bonjour,
ok, la page que je désire lire est locale. Je pense que tu voulais dire <string.h> dans ton message.
merci!
ok, la page que je désire lire est locale. Je pense que tu voulais dire <string.h> dans ton message.
merci!
Salut.
Donc, deja la page en local, ça simplifie grandement le problème.
En effet, c'est bien <string.h> dont je parlais, mais sans garantie en C.
dans string, tu as find(const char*), erase(int,int), insert(i,const char*)
http://www.cppreference.com/cppstring/index.html
pour plus d'info sur les strings.
Donc, deja la page en local, ça simplifie grandement le problème.
En effet, c'est bien <string.h> dont je parlais, mais sans garantie en C.
dans string, tu as find(const char*), erase(int,int), insert(i,const char*)
http://www.cppreference.com/cppstring/index.html
pour plus d'info sur les strings.
Moi j'utiliserai plutôt la lib pcre pour rechercher une expression régulière correspondant au motif de chaîne que tu recherches.
Maintenant pour être tout à fait franche, il y a des langages plus adaptés que le C ou le C++ pour faire ce genre de choses, par exemple le python ou le perl. Et quand je dis plus simple, c'est vraiment beaucoup plus simple ;)
Mais quoiqu'il en soit tu devrais déjà jeter un oeil aux expressions régulière c'est à mon avis plus pratique que d'utiliser string.h...
Bonne chance
Maintenant pour être tout à fait franche, il y a des langages plus adaptés que le C ou le C++ pour faire ce genre de choses, par exemple le python ou le perl. Et quand je dis plus simple, c'est vraiment beaucoup plus simple ;)
Mais quoiqu'il en soit tu devrais déjà jeter un oeil aux expressions régulière c'est à mon avis plus pratique que d'utiliser string.h...
Bonne chance
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut à tous,
et si le résultat compte et pas la méthode moi je choisirais Perl avec ses regex.
lami20j
P.S. donne ta page html ( par http://cjoint.com/) et ce que tu veux modifier et je vais écrire un script.
et si le résultat compte et pas la méthode moi je choisirais Perl avec ses regex.
lami20j
P.S. donne ta page html ( par http://cjoint.com/) et ce que tu veux modifier et je vais écrire un script.
bonsoir
moi ce que je vous propose de faire c'est d'utiliser les fichier en c tout dabord tu ouvrira le fichier qui contiens la page html en suite tu devrais utiliser la fonction predefini en c "strcmp" qui retourn 0 si elle trouve la chaine que tu recherche cette fonction est predefini dans la bibliotheque <string.h>
bo courage!
moi ce que je vous propose de faire c'est d'utiliser les fichier en c tout dabord tu ouvrira le fichier qui contiens la page html en suite tu devrais utiliser la fonction predefini en c "strcmp" qui retourn 0 si elle trouve la chaine que tu recherche cette fonction est predefini dans la bibliotheque <string.h>
bo courage!
bennaniidriss, le C ne priori a priori pas d'utiliser des expressions régulières, comme je l'ai dit plus haut, et qui sont nettement plus pratique qu'un strcmp. On peut s'en sortir avec strcmp mais c'est vraiment pas pratique.
Donc si le programme doit être fait en C/C++, cf lib pcre. Sinon, mieux vaut utiliser un langage de script comme le python ou le perl qui permettent de faire très simplement ce job. A mon avis en python c'est même plus facile qu'en perl.
Bonne chance
Donc si le programme doit être fait en C/C++, cf lib pcre. Sinon, mieux vaut utiliser un langage de script comme le python ou le perl qui permettent de faire très simplement ce job. A mon avis en python c'est même plus facile qu'en perl.
Bonne chance