Regex compliquée

jjth1 Messages postés 10 Date d'inscription lundi 28 août 2006 Statut Membre Dernière intervention 17 janvier 2012 - 4 nov. 2011 à 04:40
jjth1 Messages postés 10 Date d'inscription lundi 28 août 2006 Statut Membre Dernière intervention 17 janvier 2012 - 5 nov. 2011 à 07:02
Bonjour à tous!
Je fais appel à vous car j'ai un problème assez compliqué qui dépasse mes capacités intellectuelles, c'est pourquoi je fais appel à vous.

Je possède un script php, avec des include(), des require(), src="".
J'aimerais transformer les include() et require() de façon à ce que :
require(CONSTANTE.$var.'.php?req=blabla');
ne récupère que le code contenu dans le
if($_GET['req']=='blabla')
du fichier CONSTANTE.$var.'.php'.

J'aimerais aussi que le
src="dossier1/dossier2/fichier.ext"
devienne
src="index.php?get=dossier1/dossier2/fichier.ext"
(ceci étant une base expérimentale pour un autre script assez gros).

Pour les src, cela à l'air simple, pourtant dans les scripts php que j'essaye de transformer, il n'y a pas de simples src="fichier.php" mais plutôt :
echo "src="".CONSTANTE.$variable."fichier.php"";


J'aimerais convertir tout cela à la volée à grand coups de preg_replace (ou autre).

Voila merci d'avoir pris le temps de lire ma requête.
J'ai essayé d'être le plus clair possible mais ce que je veux est assez compliqué, ainsi si vous ne comprenez pas ce que je veux, n'hésitez pas à demander des précisions.

Merci d'avance,

6 réponses

cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
4 nov. 2011 à 08:47
bonjour

dans l'éditeur pspad (gratuit) tu peux faire des remplacements massifs de code
recherche/remplacer dans fichier
tu peux même utiliser des regex,motif ...

Bonne programmation !
0
jjth1 Messages postés 10 Date d'inscription lundi 28 août 2006 Statut Membre Dernière intervention 17 janvier 2012
4 nov. 2011 à 08:55
Mon problème c'est qu'il faut que je le fasse de façon entièrement automatisée, accessible de partout, donc en PHP.

Je créé un script qui récupère tous les fichiers d'un dossier et ses sous-dossiers, pour le ramener en un seul fichier index.php. Je suis plutôt fier du resultat, pour 30 000 lignes de codes, il met moins d'une demi-seconde. Mon problème maintenant ce serait que le script qui les assemble tous ensemble puisse modifier au fur et a mesure qu'il les ajoute, les fichiers afin que tout fonctionne direct, et il ne me reste plus qu'à faire ce que je demande dans mon premier post et j'ai terminé, mais la je ne sais pas exactement comment je pourrais faire =/.

Ce script est destiné à un usage grand-public alors je peux pas demander aux gens de faire leurs propres manips, sinon je l'aurais directement fais depuis Notepad++

Merci pour ta réponse, bonne matinée
0
cod57 Messages postés 1653 Date d'inscription dimanche 7 septembre 2008 Statut Membre Dernière intervention 11 septembre 2013 19
4 nov. 2011 à 09:18
je dirai que tu prends des risques avec un script et des regex aucun contrôle visuel et vive la casse si tu maîtrises pas le sujet dans un débug avec un éditeur tu avances pas à pas

je précise notepad ou ++ ne fait pas de débug ligne à ligne fichier par fichier ça n'a rien à voir avec la onction de pspad


Bonne programmation !
0
jjth1 Messages postés 10 Date d'inscription lundi 28 août 2006 Statut Membre Dernière intervention 17 janvier 2012
4 nov. 2011 à 11:56
"Notepad++" est un éditeur, tout comme PsPad.
Et je préfère grandement Notepad++, qui est bien plus performant d'après ce que j'ai pu en juger, d'ailleurs je l'utilise depuis de nombreuses années donc je maitrise bien mieux ses fonctions.

Toujours aucune idée pour ma/mes regex?
0

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

Posez votre question
jjth1 Messages postés 10 Date d'inscription lundi 28 août 2006 Statut Membre Dernière intervention 17 janvier 2012
4 nov. 2011 à 13:04
J'ai fait un truc comme ca pour les src= mais cela ne marche pas dans certains cas =/:

$chain=preg_replace('#src=(.+)"#','src=index.php?get=$1"',$chain);

                
0
jjth1 Messages postés 10 Date d'inscription lundi 28 août 2006 Statut Membre Dernière intervention 17 janvier 2012
5 nov. 2011 à 07:02
J'ai résolu mon problème de include, require, etc... en les remplaçant par d'autres fonctions de ma conception, un peu barbare, mais ça marche!

J'ai toujours pas trouvé pour le src=, en fait il me faudrait faire en sorte que le script analyse chaque src= pour déterminer si c'est un simple src="fichier.ext" ou si ce src est contenu dans un echo "" ou si il y à présence de constantes et variables dans celui-ci.

En gros je trouves toujours pas de solution
0
Rejoignez-nous