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

JavaScript Discussion :

REGEX sous Notepad++ : Nettoyer URL


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut REGEX sous Notepad++ : Nettoyer URL
    Salut,

    Sous Notepad++, je cherche via un REGEX à faire en sorte que des chaines de caractère contenu dans un fichier et ce présentant de la sorte :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    https://community.domain.tld/register?to=3662%2354564894861351532416dzda#%frfgrzfz,categorie,dateAcces,,,
    deviennent

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    https://community.domain.tld,categorie,dateAcces,,,
    J'ai trouvé une partie de l'équation (^[a-z0-9]+://([a-z0-9.-]+)) pour identifier le début de la phrase, mais je n'arrive pas à identifier la seconde partie via un REGEX.

    Auriez-vous une idée ?

  2. #2
    Membre Expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 797
    Par défaut
    Bonjour

    Fait à l'arrache : https://regex101.com/r/wvXWQ2/1/

    Je comprends de ta demande que tu veux supprimer le querystring dans l'URL.

    Le pattern serait/pourrait être (\?[^,]*), qu'il faut alors remplacer par une chaîne vide.

    A tester et confirmer ;-)

  3. #3
    Membre éclairé Avatar de llaffont
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juin 2007
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2007
    Messages : 702
    Par défaut
    Merci pour ton aide,

    Mais je ne veux pas supprimer que la querystring.
    Je souhaite également supprimer ce qui la précède de manière a obtenir uniquement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "https://community.domain.tld"
    https://regex101.com/r/0n4s8s/1

  4. #4
    Membre Expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 797
    Par défaut
    Hello

    https://regex101.com/r/nUBuI7/1

    La regex serait: https?\://[^/].*/([^,]*)L'idée est donc de matcher le protocole (http ou https) puis le NDD. Ce qui suit et jusqu'à la présence d'une virgule serait à supprimer.

    Du coup, si le pattern donne un résultat, il suffirait de remplacer par une valeur vide.

    Bonne journée

  5. #5
    Expert confirmé Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    Mars 2009
    Messages
    2 988
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : Mars 2009
    Messages : 2 988
    Par défaut
    Moi je dirais: ^([a-z]+://[^/,#?]*)[^,\n]* avec $1 en remplacement ou bien ^[a-z]+://[^/,#?]*\K[^,\n]* avec la chaîne vide en remplacement (mais je ne me rappelle plus si notepad++ tolère le \K ou pas et ce bien que le moteur de regex soit issu de libboost).

    Ces patterns d'url restent cela-dit naïves car une url peut très bien contenir une partie login/pass entre quotes où la plupart des caractères (dont # et ?) sont tolérés, et d'autre part tous les protocoles ne sont pas forcément suivis de ://.

  6. #6
    Membre Expert
    Avatar de cavo789
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2004
    Messages
    1 797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 797
    Par défaut
    Hello

    Notre approche est différente; avec la regex que je proposais (et qui doit être plus vu comme un brouillon car non testée sur des dizaines d'URLs) visait à cibler la partie à supprimer; pas le NDD.

    Je me suis dit qu'il suffirait de cibler le $1 et de remplacer cette valeur par une chaîne vide pour la supprimer et, du coup, répondre je pense au besoin.

    Juste une autre approche ;-)

    Bonne soirée

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

Discussions similaires

  1. Regex SED / comportement différent sous Notepad++
    Par sebyo dans le forum Shell et commandes GNU
    Réponses: 22
    Dernier message: 05/12/2014, 12h21
  2. Réponses: 22
    Dernier message: 11/07/2014, 17h08
  3. Regex sous javascript
    Par Death83 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/03/2006, 01h50
  4. impression sous notepad
    Par Scyrius dans le forum Autres Logiciels
    Réponses: 1
    Dernier message: 09/11/2005, 09h14
  5. regex sous win !
    Par seal3 dans le forum Windows
    Réponses: 1
    Dernier message: 09/11/2005, 00h01

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