Expression Reguliere

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 : Expression Reguliere

Re: Expression Reguliere

par stealth35 » 13 déc. 2010, 10:41

Je vois bien que c'est plus joli, mais en quoi est-ce plus correct ? Je n'arrive pas a voir des des mots qui match différemment ?
parce que t'as une condition et un groupement alors qu'une assertion suffis :wink:

Re: Expression Reguliere

par epommate2 » 13 déc. 2010, 06:36

Je vois bien que c'est plus joli, mais en quoi est-ce plus correct ? Je n'arrive pas a voir des des mots qui match différemment ?

Re: Expression Reguliere

par stealth35 » 12 déc. 2010, 22:38

l'expression correct serait plus :
echo preg_replace('/(?<!U)r/','toto','rblablar Ur blublu r r r Ur');

Re: Expression Reguliere

par TomsDEV » 12 déc. 2010, 11:03

Ah oui en effet il fallait y penser.

Merci a toi ;)

Re: Expression Reguliere

par epommate2 » 12 déc. 2010, 10:51

Et ça :
echo preg_replace("/^r|([^U])r/","$1toto","rblablar Ur blublu r r r Ur");

Re: Expression Reguliere

par TomsDEV » 12 déc. 2010, 10:36

Merci pour ta reponse epommate2.

C'est justement mon probleme, je n'arrive pas a comprendre tous les cas dans une seule regexp.

Pour le moment j'en ai donc deux, celle que tu viens de me donner, puis une dans le cas ou r est le premier caractere, mais il est possible de faire mieux j'imagine donc si quelqu'un a une idee, je reste preneur.

Re: Expression Reguliere

par epommate2 » 12 déc. 2010, 10:20

echo preg_replace("/([^U])r/","$1toto","rblablar Ur blublu r r r Ur");
Argh, ca marche pas si la chaine commence par un r ...

Expression Reguliere

par TomsDEV » 12 déc. 2010, 09:05

Bonjour,

Je ne demande pas souvent d'aide, mais la je bloque.

Voici mon probleme:
J'ai une chaine de caratere qui contient des valeures du type: "Ur r". Dans cette, il faut que je remplace r par une variable. Il ne faut pas toucher au caractere "r" precede par U.

J'imagine qu'il faut faire ca avec preg_replace, mais jusque la, je n'ai reussi a faire en sorte que la regle avec le U soit respectee.

Merci d'avance pour votre aide.