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 :

Supprimer tous les caractères aprés un underscore


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut Supprimer tous les caractères aprés un underscore
    Bonjour a tous,

    Je cherche la fonction qui me permettra de supprimer, en javascript, dans une chaine tous les caractères se trouvant après un '_' .

    En php je sais faire : $champ = strstr($champ, '_', TRUE), mais pas en javascript.

    exemple de ce que je cherche a obtenir:
    - valeur de base : toto_12354485, objectif : obtenir toto
    - valeur de base : taratata_185, objectif : obtenir taratata

    En cherchant sur le net j'ai trouvé comment supprimer un nombre de caractère au début, au milieu ou en fin de chaine, mais pas après un caractère spécial.

    Merci beaucoup a tous ceux qui prendront le temps de me lire

    Bonne journée

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    197
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 197
    Points : 300
    Points
    300
    Par défaut
    Bonjour

    tu peux essayer la méthode split qui transforme une chaine de caractères en tableau et y récupérer le premier élément.
    Par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var chaine = "abcd_212";
    var debutDeChaine = chaine.split("_")[0];

  3. #3
    Membre actif
    Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2010
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Conseil

    Informations forums :
    Inscription : Novembre 2010
    Messages : 127
    Points : 288
    Points
    288
    Par défaut
    Bonjour,
    Tu peux faire qqchose comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var toto =  "toto_12354485"
    var totoResult =  toto.split('_').length > 0 ? toto.split('_')[0] : 0

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    Merci a vous deux pour ces solutions, je vais les tester et je reviendrai vers vous dans l'aprés midi.

    Merci beaucoup

  5. #5
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 663
    Points
    66 663
    Billets dans le blog
    1
    Par défaut
    pour le fun


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var toto =  "toto_12354485"
    var debutDeChaine=toto.replace(/_.*$/,'')

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 132
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 132
    Points : 1 418
    Points
    1 418
    Par défaut
    Bonjour,

    tu as plusieurs possibilités, celle de EddiGordo est très bien sinon tu peux utiliser :
    Code avec indexOf() et substr() : Sélectionner tout - Visualiser dans une fenêtre à part
    toto.substr(1, toto.indexOf('_')-1)
    Code avec une expression régulière : Sélectionner tout - Visualiser dans une fenêtre à part
    (toto.match(/^([^_]*)_/)||[,toto])[1]

Discussions similaires

  1. Supprimer tous les caractères après un espace
    Par l'coy dans le forum Requêtes
    Réponses: 1
    Dernier message: 16/09/2011, 16h21
  2. [RegEx] Regex pour supprimer tous les caractères répétés
    Par deadc0de dans le forum Langage
    Réponses: 8
    Dernier message: 25/11/2009, 08h25
  3. Réponses: 2
    Dernier message: 17/06/2009, 08h25
  4. Réponses: 13
    Dernier message: 09/01/2008, 01h32
  5. Réponses: 4
    Dernier message: 24/08/2005, 18h40

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