PHP Regex et les espaces

Bonjour,
Comment dire en PHP au niveau des regex

"Tout sauf espace"

Je dois reconnaitre ceci :

$code = preg_replace("/(.+)(\[texte\])/", "'$1'", $code);

Sans espace dans le premier (.+)

Merci d'avance,
JC.

7 réponses

  1. Roh mais ça change absolument rien, c'est pas la question lol...
    1
    1. Je viens de tester le code ci-dessous et ça marche:

      $text="je viens de tester le code ....";
      echo $text;
      echo preg_replace('#[^ ]+#','_',$text);

      Tout les espaces sont remplacés par _
      1
      1. l'expression régulière est la suivante #[^ ]# ou #[^\s]# un "^" dans un délimiteur , c'est comme le "!" de php, le contraire.
        1
        1. pour ma part j'ai dû utiliser [^ ]
          1
          1. $code = preg_replace("/([^ ]+)(\[texte\])/", "'$1'", $code);

            Remarque l'espace juste aprés le ^

            De façon général pour dire tout sauf un caractère X tu écris [^X]

            Allah m3ine
            0
            1. Lol justemement non O.o C'est bien ça mon problème... En fait, j'ai même essayé avec l'équivalent d'un espace en regex à savoir [\s] mais rien à faire ! Help me !

              $code = preg_replace("/([^\s]+)(\[texte\])/", "'$1'", $code);
              -1