Dans notepad je veux remplacer $_GET['text'] par fonction($_GET)

Résolu/Fermé
bourassyoussef - 14 mai 2013 à 18:48
 bourassyoussef - 15 mai 2013 à 20:25
Bonjour,


Dans notepad je veux remplacer $_GET['text'] par fonction($_GET['text']) text quelconque.

Merci d'avance.
A voir également:

2 réponses

loupix57 Messages postés 316 Date d'inscription mercredi 20 mars 2013 Statut Membre Dernière intervention 1 juin 2015 14
15 mai 2013 à 10:44
Bonjour

Rechercher (ou CTRL+F)
ensuite
Rechercher et Remplacer $_GET['text'] par function($_GET['text'])
enfin
Appliquer à tout le document.
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
15 mai 2013 à 11:02
non, il veut dire que 'text' peut être un texte quelconque.

Il faudrait utiliser un éditeur un peu plus costaud que Notepad, gérant les regexp, pour faire cela.


Dal
0
bourassyoussef
15 mai 2013 à 12:04
Bonjour,

Merci pour votre réponse, le malheur c'est comme a dit "Dal" le texte il change tout le temps, donc j'ai besoin d'une expression régulière.
SVP "Dal" vous pouvez me proposer un autre éditeur qui peut faire cela ?
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
Modifié par [Dal] le 15/05/2013 à 13:07
J'aime bien Vim, mais Notepad++ te sera sans doutes plus familer :

https://notepad-plus-plus.org/

Recherche - Rechercher ... - Remplacer - sélectionner mode de recherche "Expression régulière"

avec :

- Recherche :
$_GET\['([^']+)'\]

- Remplacer par :
fonction($_GET['\1'])


cliquer le bouton "Remplacer tout".


Dal
0
bourassyoussef
15 mai 2013 à 13:44
Merci beaucoup,

La requête que vous venez de me proposer ne marche pas (can't find the text) avec $_GET[[*.*] j'ai 900 résultats, mais bien sure je peux pas faire un remplacement automatique.
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
Modifié par [Dal] le 15/05/2013 à 14:06
La requête n'est pas $_GET[[*.*]

relis bien, ou, mieux, fait un copier coller exactement du motif de recherche et de celui de remplacement que j'ai proposés, et sélectionne correctement le paramètre regex.

elle fonctionne sur mon Notepad++ 5.9.8

mais bien sure je peux pas faire un remplacement automatique

pardon ?


Dal
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
15 mai 2013 à 14:58
hmmff, je viens de mettre à jour mon Notepad++ en 6.3.2, et la regexp ne fonctionne plus :-(

Je vais essayer de déterminer pourquoi.


Dal
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
15 mai 2013 à 15:04
OK, sous Notepad++ 6.3.2, désormais, on doit faire cela :

- Recherche :
\$_GET\['([^']+)'\]


- Remplacer par :
fonction\($_GET['\1']\)

Il faut échapper le symbole $ dans l'argument de recherche, et il faut échapper les parenthèses dans l'argument de substitution... ne me demande pas pourquoi, Notepad++ n'est pas la plus cohérente des implémentations des regexp.

Enfin, est-ce que cela fonctionne désormais de ton côté ?


Dal
0
bourassyoussef
15 mai 2013 à 19:17
Non, toujours rien.

J'utilise la même version que vous Notepad++ 6.3.2 mais il ne trouve rien pour \$_GET\['([^']+)'\]

\$_GET\['([^']+)'\] rien en retour
$_GET\['([^']+)'\] rien
$_GET[[*.*] me donne 900 résultats

Le but c'est de trouver un regexp qui permet de remplacer 900 $_GET[xxxxxx] par Fonction($_GET[xxxxxx]) sinon cela va me couter de nombreuse heures de travail débile.

Merci pour tous.

Youssef
0