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 :

Enlever les accents de ma chaîne


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut Enlever les accents de ma chaîne
    Bonjour j'ai une chaîne que je dois traité avant de l'envoyer dans une DB.

    Mon problème, je n'arrive pas a remplacer un E accent(Grave, aigu) par un E .

    Mon éditeur javascript n'accepte les caractères avec accent donc je ne peux pas faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if (localRech.search ("É") = -1!) {= localRech localRech.replace ("É", "E");}
    Donc j'ai essayé plusieurs solutions avec le code html :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if (localRech.search("É")!= -1){localRech = localRech.replace("É","E");}
    if (localRech.search("È")!= -1){localRech = localRech.replace("È","E");}
    if (localRech.search("&Eacute")!= -1){localRech = localRech.replace("&Eacute","E");}
    if (localRech.search("&Egrave")!= -1){localRech = localRech.replace("&Egrave","E");}
    if (localRech.search(/É/)!= -1){localRech = localRech.replace(/É/,"E");}
    if (localRech.search(/È/)!= -1){localRech = localRech.replace(/È/,"E");}
    Mais ça ne fonctionne pas

    D'avance merci .

  2. #2
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    un minimum de recherche ...
    ce topic est encore sur la première page :!!!
    http://www.developpez.net/forums/d11...js-navigateur/
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Donc comme je disais mon éditeur qui est un EAI (Mirth) n'accepte pas /[èéêë]+/g .

  4. #4
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    et javascript là dedans ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre Expert
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Par défaut
    Citation Envoyé par jacko842 Voir le message
    Donc comme je disais mon éditeur qui est un EAI (Mirth) n'accepte pas /[èéêë]+/g .
    ça va pas être pratique...

    C'est quoi cet éditeur ? Tu es puni ?

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut


    C'est un outil spécialement conçu pour HL7 l'intégration du message, Mirth Connect fournit les outils nécessaires pour développer, tester, déployer et d'interfaces de contrôle.

    Je pense que je vais utiliser les codes ASCII .

  7. #7
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    essaye plutot le code octal ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  8. #8
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par défaut
    Heureusement, JavaScript a tout prévu
    Le x doit être en minuscule, mais pour le code hexa, peu importe.

    On peut construire des regexp avec les caractères échappés de cette manière :

    Et en bonus, vlà un petit script pour retrouver rapidement le code d'un caractère :
    Code JS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var charcodes = {};
    for (var i = 0; i < 256; i++) {
       var code = '"\\x' + (i < 16 ? '0' : '') + i.toString(16) + '"';
       charcodes[eval(code)] = code;
    }
    Par exemple, charcodes['è'] renvoie "\xe8".

    Pour le cas qui nous intéresse, /[èéêë]+/g – qui, au passage, peut se simplifier en /[è-ë]+/g – devient :
    Note que cette technique permet d'émuler l'ASCII étendu (8 bits).
    Un logiciel qui ne supporte que le 7 bits, à notre époque, ça tient du blasphème. Pour le bien de l'humanité, exige un support complet de l'ASCII étendu (au moins)…
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  9. #9
    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 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    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 659
    Billets dans le blog
    1
    Par défaut
    comme suggéré plus haut ça fonctionne aussi en octal :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    reg=/[\350-\353]+/g;
    alert(reg.test("é"))
    avec l'octaliseur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    var charcodes = {};
    for (var i = 0; i < 256; i++) {
      var code = '"\\' + (i < 8 ? '0' : '') + i.toString(8) + '"';
      charcodes[eval(code)] = code;
    }
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  10. #10
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    octaliseur
    J'aime ce mot ^^

    Je pense qu'il n'y a pas besoin du 0 pour les premiers caractères :
    Code console : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>> '\7'=='\07'
    true
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    661
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2006
    Messages : 661
    Par défaut
    Super merci de votre aide .

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    if (localRech.search(/\xcb/)!= -1){localRech = localRech.replace(/\xcb/,"E");}
    Merci

  12. #12
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 100
    Par défaut
    T'es matinal toi

    On peut encore optimiser ton code, car search n'est pas utile. Si replace ne trouve rien à remplacer, il renvoie la chaîne originale :
    Code JS : Sélectionner tout - Visualiser dans une fenêtre à part
    'abc'.replace('d', 'e'); // renvoie 'abc'
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

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

Discussions similaires

  1. [FoxPro]Instruction pour enlever les accents ?
    Par Fab-FoxPro dans le forum Autres SGBD
    Réponses: 3
    Dernier message: 02/01/2025, 15h09
  2. Enlever les accents d'une chaîne
    Par Toulousaing dans le forum Langage
    Réponses: 3
    Dernier message: 26/03/2012, 09h54
  3. Enlever les accents d'une chaîne
    Par iubito dans le forum Contribuez / Téléchargez Sources et Outils
    Réponses: 0
    Dernier message: 14/02/2011, 19h00
  4. [Fait]API - Enlever les accents d'une chaîne
    Par cafeine dans le forum Contribuez
    Réponses: 1
    Dernier message: 27/01/2007, 16h48
  5. Enlever les accent ?
    Par muquet dans le forum Langage
    Réponses: 5
    Dernier message: 10/02/2006, 20h23

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