J'ai une chaîne qui a data-123
comme valeur. Comment pourrais-je entrer et supprimer data-
de la chaîne tout en laissant le 123
dans jQuery ou JavaScript?
Pas besoin de jQuery.
var ret = "data-123".replace('data-','');
console.log(ret); //prints: 123
Pour tous les événements à éliminer, utilisez:
var ret = "data-123".replace(/data-/g,'');
PS: la fonction replace renvoie une nouvelle chaîne et laisse la chaîne d'origine inchangée. Utilisez donc la valeur de retour de la fonction après l'appel de replace ().
Cela n'a rien à voir avec jQuery. Vous pouvez utiliser la fonction JavaScript replace
pour cela:
var str = "data-123";
str = str.replace("data-", "");
Vous pouvez également passer une expression rationnelle à cette fonction. Dans l'exemple suivant, il remplacerait tout sauf les chiffres:
str = str.replace(/[^0-9\.]+/g, "");
Vous pouvez utiliser "data-123".replace('data-','');
, comme indiqué, mais en tant que replace()
ne remplace que l'instance FIRST du texte correspondant, si votre chaîne était quelque chose comme "data-123data-"
puis
"data-123data-".replace('data-','');
ne remplacera que le premier texte correspondant. Et votre sortie sera "123data-"
Donc, si vous voulez que toutes les correspondances de texte soient remplacées dans une chaîne, vous devez utiliser une expression régulière avec le drapeau g
comme ceci:
"data-123data-".replace(/data-/g,'');
Et votre sortie sera "123"
vous pouvez utiliser slice (), il rétablit les caractères entre début et fin (point final inclus)
string.slice(start , end);
voici quelques exemples pour montrer comment cela fonctionne:
var mystr = ("data-123").slice(5); // jast define start point so output is "123"
var mystr = ("data-123").slice(5,7); // define start and end so output is "12"
var mystr=(",246").slice(1); // returens "246"
Le bon vieux JavaScript suffira - jQuery n’est pas nécessaire pour une tâche aussi simple:
var myString = "data-123";
var myNewString = myString.replace("data-", "");
Voir: .replace()
docs sur MDN pour plus d'informations et d'utilisation.
Ex: -
var value="Data-123";
var removeData=value.replace("Data-","");
alert(removeData);
J'espère que cela fonctionnera pour vous.
Cette petite fonction que j'ai faite a toujours fonctionné pour moi :)
String.prototype.deleteWord = function (searchTerm) {
var str = this;
var n = str.search(searchTerm);
while (str.search(searchTerm) > -1) {
n = str.search(searchTerm);
str = str.substring(0, n) + str.substring(n + searchTerm.length, str.length);
}
return str;
}
// Use it like this:
var string = "text is the the cool!!";
string.deleteWord('the'); // Returns text is cool!!
Je sais que ce n'est pas le meilleur, mais cela a toujours fonctionné pour moi :)
J'étais habitué à la méthode C # (Sharp) String.Remove. En Javascript, il n'y a pas de fonction remove pour string, mais il y a une fonction substr. Vous pouvez utiliser la fonction sous-substrat une ou deux fois pour supprimer des caractères de la chaîne. Vous pouvez faire en sorte que la fonction suivante supprime les caractères au début de l'index jusqu'à la fin de la chaîne, tout comme la méthode c # commence par surcharger String.Remove (int startIndex):
function Remove(str, startIndex) {
return str.substr(0, startIndex);
}
et/ou vous pouvez également créer la fonction suivante pour supprimer les caractères au début de l'index et du nombre, tout comme pour la seconde méthode de surcharge c #: String.Remove (int startIndex, int count):
function Remove(str, startIndex, count) {
return str.substr(0, startIndex) + str.substr(startIndex + count);
}
et alors vous pouvez utiliser ces deux fonctions ou l’une d’elles pour vos besoins!
Exemple:
alert(Remove("data-123", 0, 5));
Sortie: 12
str.split('Yes').join('No');
Cela remplacera toutes les occurrences de cette chaîne spécifique à partir de la chaîne d'origine.
Utiliser match()
et Number()
pour retourner une variable number
:
Number(("data-123").match(/\d+$/));
// strNum = 123
Voici ce que dit la déclaration ci-dessus ... travail intermédiaire:
str.match(/\d+$/)
- retourne un tableau contenant des correspondances avec n'importe quelle longueur de nombres à la fin de str
. Dans ce cas, il retourne un tableau contenant un seul élément de chaîne ['123']
.Number()
- le convertit en un type de nombre. Parce que le tableau retourné par .match()
contient un seul élément, Number()
retournera le nombre.