reg exp

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : reg exp

par jojolapine » 19 janv. 2009, 10:18

Oui il vaut peut-être mieux corriger la source, autrement dit le javascript, tu peux nous montrer le code qui s'occupe d'ajouter les variables dans l'url?

par Invité » 19 janv. 2009, 01:49

enfait j'ai une fonction javascript qui prend des valeurs et les passe en paramètres dans l'url. La fonction javascript s'execute a chaque rechargement de page.

Ma fonction js ajoute les paramètres "aveuglément" dans l'url. Si par exemple il y a déjà test=1 dans l'url et que j'envoie une nouvelle valeur pour test(2 par exemple), je me retrouve avec &test=1&test=2

=> la valeur précédente de ma variable n'est pas écrasée. la seule solution que j'ai trouvé est d'utiliser une expression régulière pour remplacer toutes les occurences "&test=..." par "" avant d'ajouter ensuite ma nouvelle var et sa valeur.

Y a til y moyen pour écraser des valeurs précédentes de variables dans une url? on va passer dans le javascript la...

par blof » 19 janv. 2009, 01:18

Regarde du côté de http://fr2.php.net/parse_url , c'est plus adapté à tes besoins il me semble....
Je ne vois pas trop comment utiliser parse_url() pour ce problème.
Est-ce que tu peux expliquer ?


( Je ne vois pas trop non plus comment on en est arrivé à $url = "test=1&toto=2&var=18&test=4&test=5"; )

par jojolapine » 18 janv. 2009, 23:05

Regarde du côté de http://fr2.php.net/parse_url , c'est plus adapté à tes besoins il me semble....

par blof » 18 janv. 2009, 21:12

y'a til une méthode pour les apprendre?
Un jour je suis tombé sur ce tutoriel : http://lumadis.be/regex/tuto_pcre.php et je ne l'ai plus quitté. :love4:

J'en profite pour remercier son auteur. :)
est-ce que celle ci est utilisable de la même manière en javascript?
En JavaScript on utilise les motifs POSIX et preg_replace() utilise les motifs PCRE. ( voir tuto )
Mais les "motifs" de notre exemple devraient fonctionner en JavaScript.

par Invité » 18 janv. 2009, 20:52

merci! j'ai beau essayer, j'arrive pas à me faire aux expressions régulières!
y'a til une méthode pour les apprendre?

est-ce que celle ci est utilisable de la même manière en javascript?

par blof » 18 janv. 2009, 20:51

j'ai supposé un peu vite que les valeurs de "test" étaient numériques.

correction :
$url = preg_replace('/&*test=[^&]+/', '', $url);

par blof » 18 janv. 2009, 20:47

bonsoir,
<?php

$url = "test=1&toto=2&var=18&test=4&test=5";

$url = preg_replace('/&*test=\d+/', '', $url);
$url = preg_replace('/^&/', '', $url); // suppression du premier "&" si il existe.

echo $url;

?>

reg exp

par Invité » 18 janv. 2009, 20:32

Bonjour à tous,

J'ai une chaine comme ceci:
$url = "test=1&toto=2&var=18&test=4&test=5";

comment écrire une expression régulière qui suppirme "&test=" et sa valeur quelle qu'elle soit ? (ici, 1, 4 et 5)

Merci pour vos réponses.