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

C# Discussion :

Regex pour récupérer un motif d'une chaine


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2010
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 13
    Par défaut Regex pour récupérer un motif d'une chaine
    Bonjour,

    J'essaie depuis un petit bout de temps de récupérer un motif dans une chaine sans grand succès.

    Voici ma chaine :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     addLoadEvent(function() { window.setTimeout(function() { if(!ViewIframe1.document.location.href.startsWith('http')) ViewIframe1.document.location.replace('ViewIframe.aspx?PlayerID=7&bv=bb&selectedLeagues=0'); }, 10); }); var additionalContent = $get("NewAdditionalContent"); if (additionalContent != null) { $get("additionalContentPH").appendChild(additionalContent); $get('NewAdditionalContent').style.display = ''; } function ShowAdditionalContentPHControl() { var additionalContent = $get('NewAdditionalContent'); if (additionalContent != null) additionalContent.style.display = ''; } function HideAdditionalContentPHControl() { var additionalContent = $get('NewAdditionalContent'); if (additionalContent != null) additionalContent.style.display = 'none'; } function DetermineInitialAdditionalContentPHControlState() { if (MainAjaxNavigationController.SelectedPlayerCount() == 0) ShowAdditionalContentPHControl(); }
    Je souhaiterais seulement récupérer à partir de cette chaine le motif :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ViewIframe.aspx?PlayerID=7&bv=bb&selectedLeagues=0

    Est ce que quelqu'un pourrait m'aiguiller ou tout simplement me donner la solution.

    Voici ce que j'avais essayé mais ça ne marche pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Regex myRegex = new Regex(@"^document.location.replace('([\w]+)')$");
            Match m = myRegex.Match(texte);
    Merci d'avance pour votre aide !!

  2. #2
    Membre émérite
    Avatar de neilbgr
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Août 2004
    Messages
    651
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 651
    Par défaut
    A vu de nez, il faut avoir en tête les caractères propre aux expressions rationnelle tel que le ".".
    Dans ton cas, échappes-les :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    @"^document\.location\.replace('([\w]+)')$"
    Ensuite, le "^" implique que la chaine doit commencer en début de ligne, mais cela n'a pas l'air d'être le cas.
    Même remarque pour le "$" (pour la fin de ligne).
    À supprimer donc.

    En somme il faut un peu plus creuser sur les expressions rationnelles.
    Y a des sites très bien qui expliquent ça (sur developpez.com, un autre mais en anglais )

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

Discussions similaires

  1. Réponses: 19
    Dernier message: 08/07/2010, 22h30
  2. [RegEx] Regex pour récupérer une chaîne de 6 chiffres
    Par calitom dans le forum Langage
    Réponses: 5
    Dernier message: 12/06/2008, 21h37
  3. Réponses: 27
    Dernier message: 28/03/2007, 16h09
  4. Réponses: 12
    Dernier message: 04/09/2006, 17h59
  5. Pb pour récupérer la velur d'une case à cocher
    Par muppetshow dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 15/04/2005, 21h23

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