J'essayais d'obtenir un ensemble de noms d'URL en tant que paramètre d'URL.

var url_arrays = [],url_param;
var url = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
for (var i = 0; i < url.length; i++)
        {
            url_param = url[i].split('=');
            url_arrays.push(url_param[0]);
            url_arrays[url_param[0]] = url_param[1];
        }
var temp = decodeURIComponent(url_arrays[2]).split(','||' ');

Mais de cette façon, je reçois une sortie comme celle-ci

[jon Ned Brian Sam]

Comment retirer le support d'ouverture et de fermeture?

La méthode replace existe en javascript mais je ne peux pas remplacer un jeu de caractères comme str.replace('['||']','')

2
Anurag Chakraborty 21 juil. 2015 à 14:13

2 réponses

Meilleure réponse

Votre regex est faux.

var str = '[jon Ned Brian Sam]';
str = str.replace(/\[|\]/g, '');
alert(str);

OU,

var str = '[jon Ned Brian Sam]';
str = str.replace('[', '').replace(']', '');
alert(str);

OU,

Vous pouvez utiliser les méthodes substr.

var str = '[jon Ned Brian Sam]';
str = str.substr(1, str.length - 2);
alert(str);
0
Tushar 21 juil. 2015 à 11:38

Je supprimerais les crochets de début et de fin avec l'expression régulière suivante:

var str = '[jon Ned Brian Sam]';
str = str.replace(/^\[|\]$/g, '');
document.write(str);

Les ancres ^ (début de chaîne) et $ (fin de chaîne) garantissent que nous ne supprimons que les crochets aux positions de début / fin de la chaîne d'entrée.

0
Wiktor Stribiżew 21 juil. 2015 à 11:21