Problème avec la méthode String.split() et les "\"

Résolu
Kenshin07
Messages postés
7
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
23 mars 2007
- 22 mars 2007 à 16:09
Kenshin07
Messages postés
7
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
23 mars 2007
- 23 mars 2007 à 08:34
Bonjour,

je développe un module d'upload, et j'aimerais pouvoir récupérer le nom du fichier sélectionné afin de le mettre dans la value de mon TextBox. J'avais pensé utiliser la méthode split() sur  le chemin du fichier, mais elle ne prends pas en compte les ""...
 
Voici mon code :

        var file= document.getElementById("file" + id);
        setTitre(titre,file.value);

        function setTitre(input,filename)
        {
                var reg=new RegExp("[\]+", "g");
                var tableau=filename.split(reg);
                input.value = tableau[tableau.length-1];
        }

Merci de votre aide....

@nDriC#7

2 réponses

cs_bultez
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
22 mars 2007 à 16:18
Bonjour,

    dans une expression régulière et en javascript aussi,
        certains caractères sont significatifs
        c'est le cas du \  ici par exemple \t veut dire <tab>
                                                              \r\n c'est passage à la ligne...
       quand on veut utiliser un tel caractère "pour ce qu'il est"
          il faut le dire : \\
                    ça devrait aller mieux
           sinon \] est interprété    comme un seuul caractère.

          ( pas regardé le reste ! )
         
<hr />


Cordialement                Bul     [mon Site]     [M'écrire]                    




<hr />
3
Kenshin07
Messages postés
7
Date d'inscription
lundi 23 janvier 2006
Statut
Membre
Dernière intervention
23 mars 2007

23 mars 2007 à 08:34
Merci beaucoup, c'est exactement la réponse qu'il me fallait.

Par contre, si je met : 

               var reg=new RegExp("[\\]+", "g");

Il me sort une erreur...
Donc j'ai fait comme ça : 

        var file= document.getElementById("file" + id);
        setTitre(titre,file.value);

        function setTitre(input,filename)
        {
                var tableau=filename.split("\");
                input.value = tableau[tableau.length-1];
        }

Et ça marche au poil !!!

MERCI BEAUCOUP !!!!!!!
3