Supprimer le préfixe à partir d'une liste de chaînes de caractères
Comment puis-je supprimer une sous-chaîne (préfixe) à partir d'un tableau d'éléments de chaîne? (suppression de la sous-chaîne à partir de chaque élément)
Vous devez vous connecter pour publier un commentaire.
À l'aide de
RegExp
et^
pour s'assurer qu'il est le préfixe et pas simplement quelque part dans la chaîne:Beaucoup de réponses déjà données sont fausses, parce qu'on va supprimer la chaîne de caractères à partir de n'importe où dans chacun des éléments (et pas seulement le début). Voici une autre approche:
Résultat:
Ou, si vous préférez simple itération (pas de fonction d'ordre supérieur):
Voir MDN si la pleine prise en charge du navigateur pour
.map()
est nécessaire.vous pouvez également utiliser
.forEach()
si vous avez besoin de garder le tableau d'origine.pre
indépendamment de savoir si elle correspond au préfixe des chaînes dans le tableau.Exemple:
'test'
à/^test/
. Puis il imprime["1", "2test", "3test3"]
comme prévu.Juste pour un peu de variété:
modifier - pour montrer comment vous pouvez limiter simplement le préfixe avec le droit regexp.
Juste itérer sur votre liste de chaîne de caractères (avec une boucle for par exemple) et d'utiliser le
replace
méthode (les détails ici)Simplement parcourir en boucle?
http://jsfiddle.net/DcvE2/1/
Vous pouvez utiliser le jQuery
map
fonction -Je ne cette: