bonjour,
je suis sur que c'est possible en Perl,
j'aimerais contruire une expression rationnelle pour substituer selon une condition
je voudrais modifier un url et lui rajouter un argument à la fin, donc si l'url source a deja des argument, je rajoute &arg=truc, si elle n'en a pas , je rajoute ?arg=truc
Je n'est aucun probleme a matcher si il y a des argument ou pas, mais apres... comment faire en une seule condition rationnelle ?
je vous remercie d'avance .
# Commentaire supprimé
Posté par Anonyme . Évalué à 2.
Ce commentaire a été supprimé par l’équipe de modération.
# ben, en plusieurs lignes
Posté par Axioplase ıɥs∀ (site web personnel) . Évalué à 3.
s/truc/&bidule=chose/ } else {
s/truc/?bidule=chose/}
De toute façon, je pense qu'utiliser s///e ne ferait que la même chose car dans le remplaçant, tu devrais reparser toute la ligne pour faire ta décision...
Sinon, sans doute y a t-il moyen d'utiliser du gruik, mais de mémoire, le manuel de perl ne recommande pas trop les "regexps" trop siouxes (genre "turing completes").
# sans condition
Posté par Krunch (site web personnel) . Évalué à 2.
$ echo -e 'foo\nfoo?bar' | perl -pe's/(\?|$)(.*)/?bla&$2/'
ou même
$ echo -e 'foo\nfoo?bar' | perl -pe's/(\?|$)(.*)/?$2&bla/'
pertinent adj. Approprié : qui se rapporte exactement à ce dont il est question.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.