Chercher/Remplacer un peu particulier

yo! les geeks,

Il ne s’agit pas de prog. à proprement parler, mais ça parle de code, donc j’espère rester dans le bon forum.
Donc…

Avant j’étais jeune et con, je programmais en PHP avec register_global=On dans mon php.ini. C’est mal, c’est sale, c’est pas bien. J’ai donc arrêté de programmer comme ça et je fais du $POST et du $GET bien comme il faut.
Toutefois, je me retrouve avec une sacrée tonne de code à modifier et je me demandais comment l’automatiser plutôt que de le faire à la main.
La bonne nouvelle, c’est que toutes mes variables en POST ont été préfixées par le mot "input
". Ce qui nous donne des $input_article, $input_auteur, $input_categorie, etc, etc.
Le but du jeu maintenant, c’est de trouver un outil, ou un éditeur de texte capable de faire un chercher remplacer avec ces informations là. Un truc du genre :
 - chercher input
*
 - remplacer par POST["input*"]
Ce qui nous donnerait pour $input_article : $_POST[“input_article”]
J’ai farfouillé dans les expressions régulières de UltraEdit (10.2) mais j’ai pas réussi à faire ce que je veux.
Si l’un de vous avait la solution ça m’éviterait, soit de le faire à la main, soit d’écrire un programme qui le fait

Merciiiiiiii
Antoine
Ce message a été édité par AntoineViau le 10/09/2004

Tu as essayé avec une macro avec ultra edit ?

ça doit pas être bien dur pour toi :wink:

une fois que tu as une macro qui fonctionne pour un fichier, utilise la fonction d’execution automatique d’une macro a l’ouverture d’un fichier … puis tu ouvre les fichiers a modifer.

Problème intéressant…
J’avais eu l’occasion d’être content d’utiliser AdvaSaR Pro pour un problème similaire, je pense qu’il te conviendra :
http://www.download.com/AdvaSaR-Pro-Advanc…tml?tag=lst-0-2
Sinon, je te laisse fouiller là :
http://www.download.com/3120-20-0.html?qt=…&tg=dl-2001

Bon, au vu du problème, là, comme ca, je dirais expressions régulières… et ca tombe bien, visual studio, il gère. Donc, si t’as ca sous la main, tu sais ou chercher.

Sinon, si t’as pas ca, on dois pouvoir faire un ptit prog vite fait en C#

Avec cette ligne ca devrait etre bon :

cat fichier.1 | perl -pe ‘s/$(input_w*)/_POST["$1"]/g’ > fichier.2[/quote]Ce message a été édité par BokLM le 10/09/2004

Pour ce genre de manip, les expressions régulières sont les bienvenues et qui plus est, je trouve plus simple d’avoir recours aux outils de base d’Unix. Ci-dessous une méthode avec SED. Pour avoir accès aux outils Unix sous Windows, je conseille l’installation de Cygwin.

Un fichier texte toto.txt contenant :
$input_article
tagada
blabla
la commande :

sed ‘s/input_[a-z]*/_POST["&"]/g’ toto.txt

donne le résultat suivant sur la sortie standard :

$_POST[“input_article”]
tagada
blabla
Charge à toi de rediriger la sortie dans un fichier et même d’encapsuler le tout dans un script qui permet de renommer le fichier créé par le nom du fichier d’origine.

Voilà.

EDIT : même idée que BokLM. On peut le faire avec n’importe quel outil “de base” (python, perl, sed, …)
Ce message a été édité par Moktar le 10/09/2004

Je viens de tester la méthode sed et ça marche nickel. Je fais un chtit script pour batcher le bidule et c’est joie.
Je suis sauvé. Merci à tous !

Antoine