j'essaie de vérifier les chaînes pour créer des URL valides
je dois seulement garder A-Z 0-9 et supprimer les autres caractères de la chaîne en utilisant javascript ou jquery
par exemple :
Restaurant Belle's
j'ai besoin de le convertir en:
Belle-s-Restaurant
donc les caractères sont supprimés et seuls A-Z a-z 0-9 sont conservés
merci
En ajoutant notre méthode .cleanup()
à l'objet String lui-même, vous pouvez ensuite nettoyer n'importe quelle chaîne en Javascript simplement en appelant une méthode locale, comme ceci:
# Attaching our method to the String Object
String.prototype.cleanup = function() {
return this.toLowerCase().replace(/[^a-zA-Z0-9]+/g, "-");
}
# Using our new .cleanup() method
var clean = "Hello World".cleanup(); // "hello-world"
Parce qu'il y a un signe plus à la fin de l'expression régulière, il correspond à un ou plus caractères. Ainsi, la sortie aura toujours un '-'
pour chaque série d'un ou plusieurs caractères non alphanumériques:
# An example to demonstrate the effect of the plus sign in the regular expression above
var foo = " Hello World . . . ".cleanup(); // "-hello-world-"
Sans le signe plus, le résultat serait "--hello-world--------------"
pour le dernier exemple.
Ou ceci si vous vouliez mettre des tirets à la place d'autres caractères:
string.replace(/[^a-zA-Z0-9]/g,'-');
En supposant que la chaîne est conservée dans une variable appelée BizName
:
BizName.replace(/[^a-zA-Z0-9]/g, '-');
BizName
ne devrait désormais impliquer que les caractères demandés.