Extraire un CRC du nom d'un fichier

Résolu
Nymouas Messages postés 34 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 20 mai 2005 - 16 sept. 2004 à 11:54
Nymouas Messages postés 34 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 20 mai 2005 - 17 sept. 2004 à 11:02
Bonjour,

Je voudrais faire une fonction (script) qui me permette d'extraire le crc d'un nom de fichier s'il existe évidemment. En résumé, je dois extraire une suite de 8 caractères qui ont la caractéristique d'être compris entre 0 & F en hexadécimal. & $null s'il n'en a pas trouvé

Comment puis-je m'y prendre de la manière la plus simple ?

Pour info, mon but serait de faire un p'tit script qui me permette de checker le fichier reçu à la fin de manière automatique. Il existe une fonction $crc qui permet de calculer le crc d'un fichier. Le pb de cette fonction est qu'elle freeze mirc pdt le calcul. Je recherche également un moyen de ne pas faire freezer mirc. Par exemple demander à un programme extérieur exe de calculer la valeur et de retourner la réponse sous forme d'un event (ou un dll) de manière à ce que le processus soit en background ou existe-t-il une fct qui permette de faire du background ?

NB : a priori le caractère avant ce nombre et après ce nombre n'est pas un caractère de 0 à F

Exemple : Nomdufichier0A1B8CD5.txt où je veux récupérer le nombre hexa qui pourrait se trouver n'importe où.

Merci d'avance,
@+

4 réponses

cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
16 sept. 2004 à 14:39
Alias Extract return $iif($regex($1,/([0-9A-F]{8})/),$regml(1),$null)

Tention a la casse , le résultat est pas garanti (BLABLA0A1B8CD5.txt retournera A0A1B8CD pas 0A1B8CD5 après fo voir si t'as des infos en plus sur la position du crc pour l'améliorer)

PaDa
3
Nymouas Messages postés 34 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 20 mai 2005
16 sept. 2004 à 15:27
Merci bcp Pada,
dis donc c pas mal la fonction en une ligne moi il m'en aurait fallu plusieurs si j'avais fait comme je le pensais avec une boulce :P

Faudrait que je jette un coup d'oeil su la fct regex elle a l'air puissante ;)

Pour ton exemple, en général c très rare ce genre de cas, car c souvent mais pas tjs entre () ou entre [] et parfois entre _ (car le caractère a été remplacé par un transfert). Personnellement, je n'ai jamais de nom de fichier comme celui là mais bon tout est possible ;)

En tout cas encore merci et si tu as une idée pour le problème de $crc, elle sera la bienvenue car $crc freeze assez bien mirc :(

@++ & merci,
0
cs_PaDa Messages postés 1804 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 22 septembre 2009 5
16 sept. 2004 à 18:58
Au fait je comprends pas du tout comment $crc peut faire freezer mirc : j'ai testé a l'instant sur un fichier de 18 Mo et c'est plutot instantanné , même si je connais pas l'algo a la limite ca me fait penser que ton remote est mal foutu ou que tu utilises une vieille version de mirc ^^ moi vec la 6.16 aucun souci , $crc(fichier)
bon week end tous ^^
PaDa
0
Nymouas Messages postés 34 Date d'inscription samedi 21 août 2004 Statut Membre Dernière intervention 20 mai 2005
17 sept. 2004 à 11:02
Salut PaDa,

J'utilise la version 6.12 de mirc (faudra que je la mette à jour). 18Mo c une petite taille pour un fichier moi en général c en moyenne 200Mo (+/- 10s de calcul avec freeze)

Bon w-e et merci,
++
0
Rejoignez-nous