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

R Discussion :

(PRE) Problème Expressions Régulières


Sujet :

R

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 37
    Par défaut (PRE) Problème Expressions Régulières
    Bonsoir à tous,
    J'ai beau lire des docs là dessus, je ne comprends toujours pas bien comment fonctionne ces fameuses expressions régulières;
    Mon problème est le suivant, j'ai le texte:
    "mardi : Fabrice (Dispo)"
    "lundi : Josianne (Occ)"
    Je souhaiterais récupérer les prénoms "Fabrice" et "Josianne";

    Quelqu'un peut-il m'aider svp?

    Ps: Si vous connaissez un site où il y a de nombreux exemples je suis preneur. Merci

  2. #2
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2013
    Messages : 75
    Par défaut
    pour le lien : http://ciam.inra.fr/r4ciam/node/148


    pour le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    ch <- c("mardi : Fabrice (Dispo)", "lundi : Josianne (Occ)")
    gsub(pattern="[[:alpha:]]+ : ([[:upper:]]{1}[[:alpha:]]+) .+","\\1", ch)

  3. #3
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 37
    Par défaut
    Merci mamounMob pour votre solution qui fonctionne en l'état mais je suis confronté à un problème;
    En effet, en appliquant votre fonction comme tel il ne se passe rien.
    Pour que ça marche, il faut que je fasse un c("mardi : Fabrice (Dispo)") à la main.
    Or ce texte est dans une variable "fich" obtenue comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fich <- xpathSApply(htmlParse(ListNoms[i]),"//div[contains(@class,...
    Lorsque je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fich <- gsub(pattern="[[:alpha:]]+ : ([[:upper:]]{1}[[:alpha:]]+) .+","\\1", fich)
    Ou en faisant c(fich) comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    fich <- gsub(pattern="[[:alpha:]]+ : ([[:upper:]]{1}[[:alpha:]]+) .+","\\1", c(fich))
    Cela ne fonctionne pas.
    Je ne comprends vraiment pas pourquoi, d'autant plus que ça fonctionne "à la main"

  4. #4
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2013
    Messages : 75
    Par défaut
    OK,
    il me faudrait un exemple reproductible, même minimal pour comprendre ce qui ne va pas

  5. #5
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 37
    Par défaut
    Pas de problème; Voici un bout de mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    library(XML)
    url <- htmlParse("http://www.geny.com/partants-pmu/2014-09-19-vincennes-pmu-prix-cleomede_c655563")
    course <- xpathSApply(url,"//div[contains(@class, 'yui-gc cartoucheCourse')]/div[@class='yui-u first nomReunion']",xmlValue)
    course <- gsub("\t|\n|\r","",course)
    course
    En lançant ce code vous obtiendrez: "vendredi : Vincennes (R4)"
    Maintenant, lorsque j'applique votre solution;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    course <- gsub(pattern="[[:alpha:]]+ : ([[:upper:]]{1}[[:alpha:]]+) .+","\\1", course)
    Je n'ai pas le résultat escompté; ça me donne la même chose: "vendredi : Vincennes (R4)"
    Au lieu de "Vincennes".

  6. #6
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2013
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2013
    Messages : 75
    Par défaut changer l'espace en caractère de ponctuation
    En exécutant ton code j'obtiens :
    course
    # "vendredi_:_Vincennes_(R4)"

    Du coup le code précédent ne fonctionne plus, puisqu'il y avait des espaces alors qu'ici ce sont des tirets.

    Tu peux essayer avec cette expression :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gsub(pattern='.+[[:punct:]]{3}([[:upper:]]{1}[[:alpha:]]+)[[:punct:]]{1}.+', replacement='\\1', course)
    [[:punct:]] représente les signes ponctuation

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

Discussions similaires

  1. Problème expressions régulières
    Par cottcott dans le forum Langage
    Réponses: 7
    Dernier message: 09/05/2007, 14h29
  2. Réponses: 3
    Dernier message: 20/04/2007, 14h47
  3. Problème expression régulières
    Par LEK dans le forum C#
    Réponses: 2
    Dernier message: 18/04/2007, 11h40
  4. [RegEx] problème expression régulière
    Par H-bil dans le forum Langage
    Réponses: 4
    Dernier message: 13/02/2007, 15h38
  5. Problème expressions régulières
    Par sozie9372 dans le forum Langage
    Réponses: 3
    Dernier message: 07/06/2006, 15h13

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