[..] Transformation d'un fichier dans une Array

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Avatar du membre
sylvanie
Modérateur
Modérateur
Messages : 1544
Enregistré le : jeu. 26 juil. 2007 20:31
Localisation : Paris
Status : Hors ligne

#21

Message par sylvanie » mer. 12 sept. 2007 20:35

pour répondre à l'expression suivante :

"(au3.*)[=]"

ceci demade de sélectionner la première occurence au3 suivie de n'importe quoi sur 0 à n caractères jusqu'à la dernière occurence de = (les [] sont superflux puisqu'ils ne servent à spécifier un ensemble de caractères, et là ton = est tout seul)

dans le cas au3gnagna=toto , on aura au3gnagna

mais attention, si on a : au3gnagna=totoau3gnini=titi, la sélection retenue sera au3gnagna=totoau3gnini
Toi qui cherche à mettre le doigt sur la solution, appuie sur F1.

ani
Modérateur
Modérateur
Messages : 1826
Enregistré le : lun. 23 juil. 2007 11:31
Localisation : Bureau
Status : Hors ligne

#22

Message par ani » ven. 14 sept. 2007 22:16

Merci pour l'info :) j'avais quasi compris ,,, sinon l'expression dans ce cas précis fonctionne mais n'est pas valable pour d'autre, mais bon, j'avance pas dans mon chmilblik ^^'

Normalement dans vos scripts, vous arriviez à selectionner chaque mot de catégorie ?

La première idée fut de générer automatiquement le keyword.au3 ensuite met venu une autre idée celle dite plus haut, un tableau comportant à gauche le mot d'origine et à droite le mot transformer mais j'arrive même pas je m'y perd encore.

vais relire vos script

Edit : bon je passe à autre chose lol, non je déconne :) , après quelque jour d'exercice RegEXP

pour les variables $ = \$([\w\d_]+) ou \$([A-Za-z0-9_]+)
pour les macros @ = @([\w\d_]+) ou @([A-Za-z0-9_]+)

je commence a comprendre ^^ sinon c'est juste ? j'ai essayé avec le script stringregexpGui.au3 (dernière version) il me sort bien ce que je lui demande ^__^ mais peut-être que je suis dans le faux ?

le problème est le suivant, pour le moment ^^' , je prend la premiere catégorie
au3.keywords.functions=abs acos adlibdisable adlibenable ....

je voudrai selectionner chaque mot apr!s le =
y a une formule ?

j'avais essayé en faisant des retour a la ligne et en ajoutant le séparateur, mais ensuite plus moyen :§

exemple de sortie
au3.keywords.functions
abs|
acos|
adlibdisable|
adlibenable|
...
si j'y arrive avec cette solution,j'en retire le premier indice (au3.keywords.functions)

Sinon Je vais essayé en faisant le style d'un fichier ini (peut-être plus facile :o )

Ensuite me restera plus que les "séparateur" = string (simple quote et double), Commentaire simple (;) ou en block (#ce/#cs, #comments-start/#Comments-end) et les comobjet ^^


merci pour m'aiguiller :) dès que j'aurais bien compris, ferai des merveille lol faudra aussi que je repige les tableaux .

ani
Modérateur
Modérateur
Messages : 1826
Enregistré le : lun. 23 juil. 2007 11:31
Localisation : Bureau
Status : Hors ligne

#23

Message par ani » dim. 23 sept. 2007 18:27

vu que je bloque toujours :(

je li le fichier keyword au3 et je passe la fonction stringregexp

([A-Za-z0-9@{}#^\-!+_]+) qui donne la totalité des mot clé a colorier, je voudrai savoir si en faisant stringinstr udf je pourrait designer le reste en couleur ?

plus j'avance moins sa va dans ce que je fait :(
des boucle for a rajouter ect ..

([\d\w@{}#^\-!+_]+\s) :)

sa va donner top tout en regexp et pour le moment satisfait ^__^

c'est quand meme amusant, meme sij'avance pas j'apprend, excellent, j'ai testé regulator (et j'ai rien suivit donc abandonné) je prefere stringregexpgui :o

edit:regulator et bien si on prend la peine de comprendre, le seul probleme c'est qu'il faut quand meme connaitre les formule regexp sinon outils ± bon , mais le script au3 fournis la meme chose ^^'

ani
Modérateur
Modérateur
Messages : 1826
Enregistré le : lun. 23 juil. 2007 11:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Transformation d'un fichier dans une Array

#24

Message par ani » jeu. 29 janv. 2009 13:05

J'avais oublié de répondre pour la question concernant l'erreur String missing quote,
Le soucis viend du nombre de caractère, le maximum est de 4096.
pour résoudre y a ces solution!

Code : Tout sélectionner

$blank = "...."
$blank &= "...."
ect ...
ou

Code : Tout sélectionner

Dim $blank
blank = blank & "...."
blank = blank & "...."
ect ...
Si on obtiend cette erreur Unterminated string.:
le soucis viend encore du nombre de caractère par ligne , maximum est de 4096
Exemple
$monObject = "..........."
la variable comporte 10 caractère
+ 1 caractère pour l'espacement
+ 1 caractère pour le =
+ 1 caractère pour l'espacement
+ 1 caractère pour le " en début
+ 1 caractère pour le " en fin
-------------------------------
15 caractère
-------------------------------
4096-15
-------------------------------
la valeur doit faire au maximum 4081 caractère

voilà voilà

ani
Modérateur
Modérateur
Messages : 1826
Enregistré le : lun. 23 juil. 2007 11:31
Localisation : Bureau
Status : Hors ligne

Re: [..] Transformation d'un fichier dans une Array

#25

Message par ani » dim. 01 févr. 2009 21:36

Bonjour,
surement un problème mineur.
L'erreur autoitienne est la suivante error Allocating memory, cette erreur survient sur des fichier dépassant 19 Mo.

Est-ce le buffer () ?
Ou la procédure qui ne convient pas (lecture du fichier mise en array et traitement de celui-ci par regexpression).

Apparement le faite de traiter le fichier en masse en mémoire provoque ce genre d'erreur.
Exemple de sujet qui me provoque cette erreur.
Extraction du restype 24 = http://www.autoitscript.fr/forum/viewto ... 057#p13057
Fichier de + 19Mo = http://www.autoitscript.fr/forum/viewto ... 90&start=0

a bientôt ;)

Répondre