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

Langages de programmation Discussion :

Expression régulière - Détection de phrase collée


Sujet :

Langages de programmation

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Par défaut Expression régulière - Détection de phrase collée
    Bonsoir à tous,

    Voilà, j'ai un soucis assez ennuyeux, je dispose d'un ensemble de donnée structuré dans un fichier XML que je souhaite inséré dans une base de donnée à l'aide de php (dom), jusqu'ici rien de bien compliqué...

    Mais j'ai remarqué que dans certains noeuds qui contiennent des paragraphes entiers, des phrases étaient collées..

    Par exemple nous avons des : "mot mot mot.Mot mot mot"

    Donc pour les décollés j'ai fais passer automatiquement chaque paragraphe par un preg_replace pour les décollés avec cette expression régulière : Or, le fonctionnement de cette expression régulière est assez aléatoire...

    Je m'explique, au vu des résultats elle n'a pas l'air de marcher sur les mots avec une ponctuation collée (ex.: "mot mot mot.Mot, mot mot") et aussi sur les mots très cours (ex.: "mot mot mot.Du mot mot mot").

    De plus j'aurai bien voulu rajouter aussi d'autres ponctuations de fin de phrase de type "?" "!" ";" et donc n'étant pas très fort dans le domaine des expressions régulière je me demandé si quelqu'un avait une meilleur "expression" à faire passer à mon preg_replace

    Cordialement Adam.

  2. #2
    Membre éclairé

    Inscrit en
    Novembre 2008
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 425
    Par défaut
    le (.*) risque de ramasser quelques "." également, c'est pourquoi ça ne fonctionne pas.
    D'ailleurs, je ne pense pas que cette première partie soit utile.
    pour les autres points de ponctuation, il suffit de placer l'ensemble entre [] :
    /[\.;\?!:]?(\w)/i

Discussions similaires

  1. Réponses: 48
    Dernier message: 07/03/2014, 15h49
  2. Détection d'inclusion d'expression régulière
    Par cquilgars dans le forum Shell et commandes GNU
    Réponses: 9
    Dernier message: 01/08/2012, 10h37
  3. Réponses: 4
    Dernier message: 26/06/2008, 18h15
  4. Expressions réguliéres
    Par Tooms dans le forum Langage
    Réponses: 4
    Dernier message: 06/12/2002, 18h42
  5. Réponses: 5
    Dernier message: 11/06/2002, 15h21

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