IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] expression régulière, séparer les mot d'une chaîne [FAQ]


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut [Tableaux] expression régulière, séparer les mot d'une chaîne
    Salut

    J'ai des chaîne de ce genre là : CeciEstUnTest , pas d'espace, ni de caractères accentués

    Je souhaiterais récupérer chacun des mots de cette chaîne dans un tableau (avec la fonction ereg par exemple).

    Dans le cas présent je devrais donc obtenir

    Array
    (
    [0] => CeciEstUnTest
    [1] => Ceci
    [2] => est
    [3] => Un
    [4] => Test
    )

    Le problème : je n'y arrive pas

    Les mot de la chaîne correspondent, si je ne dit pas de bêtise, au patern suivant :
    ([A-Z]{1}[a-z]*), jusque là c'est bon. Mais ensuite, je n'arrive pas obtenir ce que je veux, j'ai soit le premier mot, soit le dernier, soit le premier et le dernier. Mais jamais ceux qui sont entre.

    Est-ce que quelqu'un peux m'aider ?

  2. #2
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Et avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    preg_match("#([A-Z][a-z]*)+#si",$tachaine,$split);

  3. #3
    Invité
    Invité(e)
    Par défaut
    Non, avec ça j'obtiens :

    Array
    (
    [0] => CeciEstUnTest
    [1] => CeciEstUnTest
    )

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Salut

    Kerod, tu as mis le modificateur "i" donc tes majuscules sont bien inutiles

    JuTs, ton {1} est fondamentalement inutile
    Essaie avec :

  5. #5
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Par défaut
    Ah oui c'est vrai, désolé pour cet oubli

  6. #6
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Yogui
    Salut
    JuTs, ton {1} est fondamentalement inutile
    en effet

    Citation Envoyé par Yogui
    Salut
    Essaie avec :
    j'obtiens

    Array
    (
    [0] => CeciEstUnTest
    [1] => Test
    )


  7. #7
    Modérateur
    Avatar de Bisûnûrs
    Profil pro
    Développeur Web
    Inscrit en
    Janvier 2004
    Messages
    9 931
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Janvier 2004
    Messages : 9 931
    Par défaut
    Ceci fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $var = "CeciEstUnTest";
    ereg("([A-Z][a-z]*)([A-Z][a-z]*)([A-Z][a-z]*)([A-Z][a-z]*)",$var,$test);
    print_r($test);
    Mais évidemment, qu'avec cette chaîne précise .. Maintenant il faut arriver à simplifier cette expression et la généraliser.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/12/2013, 12h37
  2. séparer les mots d'une phrase
    Par ritchy99 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/01/2013, 00h02
  3. [À télécharger] Comment extraire les mots d'une chaîne ?
    Par pottiez dans le forum Téléchargez
    Réponses: 0
    Dernier message: 09/11/2010, 17h38
  4. [RegEx] Trouver tous les "/mot" dans une chaîne
    Par micatmidog dans le forum Langage
    Réponses: 7
    Dernier message: 31/03/2006, 12h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo