Expressions regulieres en perl

Fermé
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 - 28 mai 2002 à 12:24
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 - 29 mai 2002 à 17:53
bon voila, ce q quelqu'un v faire c'est ds une expression reguliere, appeler une fct, car une partie de l'expression reguliere est variable, mais moi je pense q une expression reguliere est une sorte de commande ou l'interpreteur regarde ce q'il connait ie les caracteres speciaux et le reste il le considere comme une chaine a traiter et donc si on y appelle une fct ou une variable, le tout est interprete coe une chaine a traiter et non comme une fct ou une variable. Voila, je ne sais pas si je m suis bien exprime.
voici son expression reguliere :
$texte =~ s/javascript:une_fonction\(\'(.*?)\'\)/\1/ig;

la fct a execute est : une_fonction

Par contre si cela est possible, est ce q vous pourrez me dire comment on fait car j'ai lu des tutoriaux mais je n'en ai pas entendu parler, et cela a reconforte ma these.

tafiscobar

6 réponses

jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
28 mai 2002 à 15:08
Je ne saisis pas exactement ton problème:

$> cat reg.pl
#!/usr/bin/perl
$param=$ARGV[0];
print $param;
$texte="javascript:une_fonction('$param')";
print "$texte\n";
$texte =~ s/javascript:une_fonction\('(.*?)'\)/\1/ig;

print "$1\n";

$ ./reg.pl aaaa
aaaa
javascript:une_fonction('aaa')
aaa
$
La variable $1 reçoit le paramètre de une_fonction , non ?

Gates gave us the windows.
Linux gave us the whole house....
0
bonjour,

j'etais à l'origine de la question que tafiscobar a eu la gentillesse de vous transmettre...
aussi me suis je permis de prendre la relève afin y d'apporter quelques precisions tout en vous remerciant pour votre bienveillance.

en effet $1 reçoit bien ce parametre aaa
des lors, comment utiliser $1 afin de substituer, dans le cadre d'un texte, les occurences de
une_fonction('aaa') //chaine de caracteres
par
&une_fonction(aaa) //resultat de la fonction

est-ce possible d'ecrire par exemple quelque chose qui aurait cette allure
$texte =~ /xxxfonction(*.?)xxxx/&fonction(\1 )/ig;

sinon comment s'y prendre?
0
Utilisateur anonyme
28 mai 2002 à 17:30
bah alors? un habitué comme toi qui poste en doubleuh? que ne veut dire?

pas bien....

kinder.surprise,
le maton du matou
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
29 mai 2002 à 11:02
desole kinder, en fait c'est pourqoi je suis venu visiter cette partie pour remercier celui qui l'a supprimer, j'avais des blemes de connection et je ne sais pas a quel moment l'un est passe, je sais en tout cas qu'au moment de la confirmation, j'etais deconnecte et donc je ne savais plus si c'etait passe ou non et le comble lorsque j'ai regarde apres m'avoir reconnecte, j'ai rien vu(peut etre a cause de mes blemes de vue, et j'aime pas les lunettes cela fait trop serieux).Sinon, je laisse la place a
tafiscobar
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
29 mai 2002 à 11:52
desole, une touche de plus, ça arrive, coe je disais je laisse la place a pablo continuer, mais bon jisisv a vu, $1 reçoit le parametre de la fct alors q c'est ce q'il n v pas, il v le resultat de la fct.

par contre j'ai un autre bleme, voila je sais q sous mysql il n'ya ni procedures stockées ni triggers et je dois faire un fichier qui doit s'executer toutes les 24heures et interroger la base pour envoyer apres des mails aux concernes, donc ce q je v c'est comment demander a apache(je v dire easyphp) d'interpreter ce fichier tous les jours a 10heures, voila si quelqu'un a une idee, j'ai regarde ds les autres messages anciens je pensais l'y trouver mais j'ai rien trouve.excuse de cette parenthese, mais je ne voulais pas ouvrir un autre thread inutile. J'ai pense a une boucle avec test mais je ne pense pas q cela puisse etre la bonne solution, j'ai aussi pense a modifier un fichier de php mais je ne sais lequel et puis qoi mettre??? c'est un traitement batch qoi q je v faire

tafiscobar
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
29 mai 2002 à 14:03
On est sous quel OS d'abord ?

Gates gave us the windows.
Linux gave us the whole house....
0
tafiscobar Messages postés 1277 Date d'inscription jeudi 7 décembre 2000 Statut Contributeur Dernière intervention 26 février 2009 177
29 mai 2002 à 17:53
jisisv, tu t'adresses a qui??? moi suis sur win2000.
tafiscobar
0