[PERL] Recherche sous chaine de caractères
Résolu
NewKind
Messages postés
16
Date d'inscription
Statut
Membre
Dernière intervention
-
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
lami20j Messages postés 21331 Date d'inscription Statut Modérateur, Contributeur sécurité Dernière intervention -
Salut,
J'ai récupéré le resultat d'une commande dans un fichier, et je souhaiterai extraire une partie du contenu de ce fichier.
Or la chaine de caractere que je souhaite récupérér change à chaque fois, j'aurais donc voulu procéder de la façon suivante:
- Indiquer une chaine de caractère ou un mot clé présent dans le fichier
- demande à récupérer le reste de la ligne concerncée uniquement.
Mon probleme est que je n'arrive pas à trouver de fonction de recherche adaptée. Quelqu'un aurait il une idée ?
J'ai récupéré le resultat d'une commande dans un fichier, et je souhaiterai extraire une partie du contenu de ce fichier.
Or la chaine de caractere que je souhaite récupérér change à chaque fois, j'aurais donc voulu procéder de la façon suivante:
- Indiquer une chaine de caractère ou un mot clé présent dans le fichier
- demande à récupérer le reste de la ligne concerncée uniquement.
Mon probleme est que je n'arrive pas à trouver de fonction de recherche adaptée. Quelqu'un aurait il une idée ?
A voir également:
- [PERL] Recherche sous chaine de caractères
- 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
file : nom_de_fichier_qui_change_toujours.bin blablablabla
Mon but c'est de recuperer le nom de fichier pour pouvoir l'inserer dans une commande qui va le telecharger.
en ce cas tu peux aussi utiliser une regex de genre
lami20j
Mon but c'est de recuperer le nom de fichier pour pouvoir l'inserer dans une commande qui va le telecharger.
en ce cas tu peux aussi utiliser une regex de genre
$fic = /.*\b(.+(?=\.bin))/;--
lami20j
Salut,
tu peux utiliser la fonction 'index' qui indique la position d'une sous-chaine dans une chaine, et utiliser ensuite la fonction 'substr' qui extrait une chaine d'une autre à partir d'une certaine position sur une certaine longueur...
tu peux utiliser la fonction 'index' qui indique la position d'une sous-chaine dans une chaine, et utiliser ensuite la fonction 'substr' qui extrait une chaine d'une autre à partir d'une certaine position sur une certaine longueur...
Salut,
tu peux aussi utiliser les regex
je pense que tu veux qu'on t'aide ça sera mieux d'être plus clair dans ta demande (pour parser une chaîne il faut savoir - et ce n'est pas un choix - l'entrée , ce qu'on veut trouver et ce qu'on veut obtenir en sortie)
tu peux aussi utiliser les regex
je pense que tu veux qu'on t'aide ça sera mieux d'être plus clair dans ta demande (pour parser une chaîne il faut savoir - et ce n'est pas un choix - l'entrée , ce qu'on veut trouver et ce qu'on veut obtenir en sortie)
Merci ! Je vais me renseigner sur "index" et "substr".
J'avais deja repéré index, mais je ne savais pas quoi faire de son resultat.
Pour lami20j j'essaye d'etre précis justement. La sortie de ma recherche ne sera jamais la meme, c'est pour ça que je ne trouvais pas de fonction que je pouvais utiliser directement, je suis obligé d'en combiner plusieurs et je les connais trop peu, mais comme ça je devrais m'en sortir.
Merci !
J'avais deja repéré index, mais je ne savais pas quoi faire de son resultat.
Pour lami20j j'essaye d'etre précis justement. La sortie de ma recherche ne sera jamais la meme, c'est pour ça que je ne trouvais pas de fonction que je pouvais utiliser directement, je suis obligé d'en combiner plusieurs et je les connais trop peu, mais comme ça je devrais m'en sortir.
Merci !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
En fait ça ne fonctionne pas vu qu'avec Index je suis obligé de savoir à l'avance ce que je recherche. Ca n'est pas mon cas.
Je vais plutot utiliser wget pour effectuer la recherche, mon script Perl ne fera que recuperer la valeur qu'il renvoit. Voila.
Je vais plutot utiliser wget pour effectuer la recherche, mon script Perl ne fera que recuperer la valeur qu'il renvoit. Voila.
Salut,
mais tu cherches quand même quelque chose
et ce quelque chose tu le connais
tu dis que la sortie ne sera jamais la même
donne un exemple de quelques sorties pour voir si on trouve une solution
aide nous pour pouvoir t'aider :-))
mais tu cherches quand même quelque chose
et ce quelque chose tu le connais
tu dis que la sortie ne sera jamais la même
donne un exemple de quelques sorties pour voir si on trouve une solution
aide nous pour pouvoir t'aider :-))
Ah !
Bah voila Unpack c'est parfait, c'est exactement ce que je cherchais :-)
Ca m'evite d'avoir recours à wget !
En fait mon fichier contient une ligne avec
file : nom_de_fichier_qui_change_toujours.bin blablablabla
Mon but c'est de recuperer le nom de fichier pour pouvoir l'inserer dans une commande qui va le telecharger.
Parfait ! Merci beaucoup pour votre aidre ;)
Bah voila Unpack c'est parfait, c'est exactement ce que je cherchais :-)
Ca m'evite d'avoir recours à wget !
En fait mon fichier contient une ligne avec
file : nom_de_fichier_qui_change_toujours.bin blablablabla
Mon but c'est de recuperer le nom de fichier pour pouvoir l'inserer dans une commande qui va le telecharger.
Parfait ! Merci beaucoup pour votre aidre ;)
$b = unpack("x6 A6", $a); # avance 6 caractères et récupére les 6 suivants ($b, $c) = unpack("x6 A2 X5 A2", $a); # avance 6, récupére 2; en arrière, récupére 2 print "$b\n$c\n";