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 :

caractere dans une chaine en majuscule


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2004
    Messages : 282
    Par défaut caractere dans une chaine en majuscule
    Comment faire le premier caractère du pays en majuscule qui se trouve dans une chaine de caractère sous cette forme: Paris (france) ?

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 202
    Par défaut
    Bonjour,
    il y a moult approche, en voici une
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var leTexte ='azerTyui';
    leTexte = leTexte.toLowerCase();
    leTexte = leTexte.split('');
    leTexte[0] = leTexte[0].toUpperCase();
    alert( leTexte.join(''));
    Cela doit bien exister sous la forme d'une regExp!

  3. #3
    Membre éclairé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2004
    Messages : 282
    Par défaut
    Merci pour ta réponse. mais ceux que je veux que le pays soit son premier caractère en majuscule.

    Car en vérité, j'ai un tableau sous cette forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    villePay["Paris (france)","Bruxelle (belgique)","Montréal (canada)", "Casablanca (maroc)" ];
    Je souhaiterais mettre le premier caractère de chaque pays en majuscule.

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 202
    Par défaut
    Je peux te proposer cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    leTexte = leTexte.replace(/\(([a-z])/ig, function( recup, letter){ return '(' +letter.toUpperCase();});
    ou encore
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    leTexte = leTexte.replace(/\(([a-z])/ig, function( recup){ return recup.toUpperCase();});
    mais pas sûr quelles soient très propre.

  5. #5
    Membre éclairé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2004
    Messages : 282
    Par défaut
    comme je ne suis pas forte je n'ai pas pu appliquer ton code sur le prg.

    car j ai pas compris la fonction suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    function( recup, letter){ return '(' +letter.toUpperCase()
    d'ou provient les paramètres idem pour la 2eme fonction.

    Pour le cas de mon tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <script>
     
    var villePay = ["Paris (france)","Bruxelle (belgique)","Montréal (canada)", "Casablanca (maroc)" ];
     
    for(var i=1; i<villePay.length; i++){
        villePay[i];
       // peut etre que c'est ici ke je dois le mettre mais comment ?
     
    }
     
    </script>

  6. #6
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 202
    Par défaut
    Dans la méthode .replace(), on peut utiliser une fonction de remplacement en deuxième paramètre.
    Lorsque l'on fait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function( recup, capture, offset, chaine){
            recup.toUpperCase();
          });
    les paramètres correspondent à :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    /*
    - recup   : texte trouvé par la regex
    - capture : partie capturée par les parenthèses
    - offest  : position de la recup
    - chaine  : la chaîne entière testée
    */
    dans ta fonction il te faut l'utiliser de la façon suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var i, nb = villePay.length;
    for( i=0; i<nb i++){
        villePay[i]=villePay[i].replace(/\(([a-z])/ig, function( recup, capture, offset, chaine){
            recup.toUpperCase();
          });
    }
    on peut donc simplifier attendu que l'on n'utilise pas tous les paramètres
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    var i, nb = villePay.length;
    for( i=0; i<nb i++){
        villePay[i]=villePay[i].replace(/\(([a-z])/ig, function( recup){
            recup.toUpperCase();
          });
    }
    Il est à noter pour le(s) paramètre(s) capture qu'il y en aura autant que de captures faites par la regExp.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function( recup, capt_1, capt_2 ..., offset, chaine){
      // le code
    }
    string.replace() sur MDN.

  7. #7
    Membre éclairé
    Femme Profil pro
    Développeur Web
    Inscrit en
    Février 2004
    Messages
    282
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2004
    Messages : 282
    Par défaut
    Merci beaucoup pour l'éclaircissement.

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

Discussions similaires

  1. [C#] Comment remplacer caracteres dans une chaine ?
    Par ChristopheOce dans le forum C#
    Réponses: 6
    Dernier message: 07/09/2011, 15h46
  2. Compter le nombre de caractere dans une chaine
    Par jmjmjm dans le forum C++
    Réponses: 13
    Dernier message: 19/11/2006, 11h37
  3. fct pour lire autant de caracteres dans une chaine?
    Par jeanfrancois dans le forum Langage
    Réponses: 3
    Dernier message: 30/03/2006, 15h45
  4. Réponses: 2
    Dernier message: 12/01/2006, 08h34
  5. [langage] compter des caracteres dans une chaine
    Par louisis dans le forum Langage
    Réponses: 3
    Dernier message: 18/05/2004, 22h39

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