sandrinoo Posté 15 Novembre 2011 Partager Posté 15 Novembre 2011 Bonjour à toutes et à tous, Je sui graphiste et commence tout juste à m'intéresser au expressions régulières car j'en ai besoin pour un client. (bref la programmation n'est pas mon fort). Je voudrais n'afficher d'une chaine que ce qui se trouve avant un point (le . de la ponctuation). Je fais donc : $reg = '/^(.+?)[.].*$/';$str = "a. b";print_r (preg_replace($reg, '$1', $str)); Et cela marche : je n'ai que le a qui s'affiche. Maintenant je voudrais n'afficher que ce qui se trouve après ce point (le : et c'est là que je sèche. comment modifier ? : $reg = '/^(.+?)[.].*$/'; Si quelqu'un voulait me répondre ça serait sympa... sandy. Lien vers le commentaire Partager sur d’autres sites More sharing options...
BlackPage Posté 15 Novembre 2011 Partager Posté 15 Novembre 2011 Salut, Perso, j'aurais plutot fait comme ca : $str = 'a. b. c. d. e. f'; $Liste = explode('.', $str); for ($i=0;$i<count($Liste);$i++){ print $Liste[$i] . "<br>"; } après tu peux traiter chaque élément comme tu veux dans ta boucle... Bon courage ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 15 Novembre 2011 Partager Posté 15 Novembre 2011 Si tu veux continuer d'utiliser ton expression régulière, il va falloir ajouter un second jeu de parenthèses (Ce sont elles qui "capturent" les morceaux de texte que tu peux réutiliser). $reg = '/^(.+?)[.](.*)$/';$str = "a. b";echo(preg_replace($reg, '$1', $str));echo(preg_replace($reg, '$2', $str)); Mais comme l'a fait remarquer BlackPage, pour séparer simplement des chaînes de caractères quand il y a un motif simple de séparation, explode() est tout indiqué. PS : echo() me semble plus approprié dans le code que print_r() : echo() est destiné à une chaîne de caractères, et print_r() à un tableau ou un objet. Lien vers le commentaire Partager sur d’autres sites More sharing options...
sandrinoo Posté 16 Novembre 2011 Auteur Partager Posté 16 Novembre 2011 Merci à tous les 2. Ta solution, captain-torche, me convient à merveille ! C'était tout simple en fait. Je commence tout juste à apprendre les expressions régulières. Merci encore à toi. Bonne journée. Sandy. Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 16 Novembre 2011 Partager Posté 16 Novembre 2011 Tu vas voir, c'est pas si compliqué que ça en a l'air ! Pour continuer à apprendre, je ne saurais que te conseiller de débuter avec http://www.expreg.com/ (Même s'il est à l'abandon), puis de continuer (Dès que tu as bien appris les bases) avec http://www.lumadis.be/regex/tuto_pcre.php Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant