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 :

recherche CRLF dans 1 string


Sujet :

JavaScript

  1. #1
    Membre éclairé
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Janvier 2005
    Messages
    534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 534
    Par défaut recherche CRLF dans 1 string
    Bonjour à tous

    Je désire implémenter une fonction javaScript dans une feuille HTML d'une application BPM (business Process Management)

    Cette fonction doit éviter le submitt du formulaire sitôt qu'elle détecte un CRLF dans la chaîne de carartères (textbox multi lignes)
    CRLF = carrier return + line feed ou encore code ascii 10 + code ascii11 (= code ascii13 sauf erreur)

    La finalité est de remplacer ces CRLF (typés accidentellement par des end-users dans des textbox multi-lignes) par des ESPACES (ascii32) puis de remplacer tous les doubles espaces par un seul espace, au cas où ...

    Questions:
    1 - comment chercher des CR, des LF ou des CRLF dans une chaine de caractère ?
    2 - quelles fonctions et méthodes utiliser ?

    Je cherche encore de mon côté
    Bonne soirée à tous

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 319
    Par défaut
    Salut ! Si tu es à l'aise avec le fait d'utiliser des expressions regéulières tu peux jeter un oeil à ce sujet (anglais). Le principe est de cibler tes "CRLF" avec le motif /\r\n/g et de le remplacer par ce que tu veux à la place. De même pour tes espaces superflux, tu peux utiliser un motif du genre /[ ]+/g et comme chaîne de remplacement " ".

    C'est une piste...

  3. #3
    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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    \s pour l'espace
    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 !

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 319
    Par défaut
    Non, c'est plus vaste comme ensemble :

    \s whitespace characters: space, tab, new-line, ...

    Autrement dit :

    [ \t\n\x0B\f\r]

    Donc l'espace simple (sans plus de précisions c'est celui que j'ai considéré) c'est... lui même

  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 658
    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 658
    Billets dans le blog
    1
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    De même pour tes espaces superflux,
    on ne connait souvent pas la nature de espaces à remplacer ... mieux vaut ratisser large
    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 !

  6. #6
    Membre expérimenté
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    319
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2006
    Messages : 319
    Par défaut
    Ouais, parfois un bon gros rateau agricole convient bien !

  7. #7
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Billets dans le blog
    125
    Par défaut
    Bonsoir.

    Voici un exemple du code que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <meta name="Author" content="Daniel Hagnoul" />
        <title>Page type</title>
        <style type="text/css">
            body {
                background-color:#696969;
                color:#000000;
                font-family:Arial, Helvetica, sans-serif;
                font-size:medium;
                font-style:normal;
                font-weight:normal;
                line-height:normal;
                letter-spacing:normal;
            }
            div,p,h1,h2,h3,h4,h5,h6,ul,ol,dl,form,table,img {
                margin:0px;
                padding:0px;
            }
            div#conteneur {
                width:95%;
                margin:12px auto;
                padding:6px;
                background-color:#FFFFFF;
                color:#000000;
                border:1px solid red;
                font-size:0.8em;
            }
        </style>
        <script type="text/javascript">
            function crlf() {
                var s = document.forms[0].data.value;    
                var ns = s.replace(/\n{1,}/gm, " ");
                var nns = ns.replace(/\s{2,}/gm, " ");
     
                alert(s + '\r\n' + nns);
            }
        </script>
    </head>
    <body>
        <div id="conteneur">
            <form>
                <textarea name="data" cols="50" rows="10">
                        Un texte
     
        avec des retours
        à la   ligne
        inutile.
     
        Mais comment   distinguer les inutiles des utiles !
                </textarea>
                <br/><input type="button" value="OK" onclick="crlf();">
            </form>
        </div>
    </body>
    </html>

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  8. #8
    Membre éclairé
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Janvier 2005
    Messages
    534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 534
    Par défaut
    Vous êtes géniaux ...

    j'ai du travail là pour revoir toutes vos précieuses informations

    Il y a aussi la boucle du 1er au dernier caractère et le test (inverse) sur les caractères AUTORISES. Si ne n'est pas un espace, une lettre de l'alphabet, un chiffre ... alors pas bon !

    Mais je reviendrai vers vous ici pour vous tenir informés de la suite
    Bonne journée à tous

  9. #9
    Membre éclairé
    Homme Profil pro
    Responsable de projet fonctionnel
    Inscrit en
    Janvier 2005
    Messages
    534
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Responsable de projet fonctionnel
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 534
    Par défaut
    Bonjour à tous

    voici une portion de code qui fonctionne avec les ALERT adéquats
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
        var strAL1 = document.taskControl.strLivrAdr.value;
        // source string:
        alert(strAL1);
        // Space instead CRLF:
        var strAL2 = strAL1.replace(/[\n\r\t]/g ," ");
        alert(strAL2);
        // one space instead two or more spaces:
        var strAL3 = strAL2.replace(/[ ]{2,}/g ," ");
        alert(strAL3);
    j'ai plus qu'à l'adapter et à le mettre en prod

    bonne journée à tous et merci

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

Discussions similaires

  1. Recherche Date dans un String
    Par deniooo dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 18/07/2008, 12h05
  2. [DEBUTANT]Recherche mot contenu dans une String
    Par lynxman dans le forum Langage
    Réponses: 7
    Dernier message: 16/12/2005, 11h49
  3. Recherche particulière dans une string
    Par Franck66 dans le forum SL & STL
    Réponses: 3
    Dernier message: 27/09/2005, 15h24
  4. recherche dans un string
    Par ericmart dans le forum ASP
    Réponses: 2
    Dernier message: 28/02/2005, 19h16
  5. Recherche d'un String dans un String ?
    Par apen2k2 dans le forum Langage
    Réponses: 9
    Dernier message: 14/04/2003, 11h08

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