1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91
|
#cs
Script de recherche de mots dans un fichier défini
Auteur :
Ajout d'un compteur de ligne
#ce
$NomFichier = "test.txt" ; le nom du fichier a parcourir
local $j
;tableau 1D
Global $ChaineRecherchee[6] ; comme on démarre le tableau par 0 on compte bien 6 éléments dans le tableau.
$ChaineRecherchee[0] = "boule"
$ChaineRecherchee[1] = "torique"
$ChaineRecherchee[2] = "fraise"
$ChaineRecherchee[3] = "Carottes"
$ChaineRecherchee[4] = "steak"
$ChaineRecherchee[5] = "Mayonnaise"
;Recherche
For $j in $ChaineRecherchee
$Resultat = "La chaine " & chr(34) & $j & chr(34) & " a été trouvée : "&@CRLF ; le début de la popup en cas de résultat
$Trouve = False ; le switch qui indiquera si on trouve
$i=1 ; on ajoute un compteur
$Fichier = FileOpen($NomFichier, 0) ; on ouvre le fichier
If $Fichier = -1 Then ; Vérification que le fichier est correctement ouvert
MsgBox(0, "Erreur", "Impossible d'ouvrir le fichier")
Exit
EndIf
While 1 ; Et on parcoure le fichier...
$ligne = FileReadLine($Fichier) ; ... en lisant chaque ligne...
If @error = -1 Then ; ... jusqu'a la fin...
ExitLoop
Else
If StringInStr($ligne,$j,2) <> 0 Then ; Si on trouve la chaine a chercher dans la ligne
$Resultat = $Resultat &"l."&$i & @CRLF ; ... on l'inscrit dans les résultats ...
$Trouve = True ;... et on précise qu'on a trouvé
EndIf
$i = $i + 1 ; On incrémente le compteur de ligne
EndIf
Wend
FileClose($NomFichier) ; on n'oublie pas de fermer le fichier
if $Trouve = True Then; Si on a trouvé...
msgbox(0,"Résultat",StringTrimRight($Resultat,2)) ; ... On l'affiche
EndIf
Next |
Partager