Tengo una data-123
cuerda
¿Cómo puedo eliminar data-
de la cadena mientras dejo el 123
?
Tengo una data-123
cuerda
¿Cómo puedo eliminar data-
de la cadena mientras dejo el 123
?
Respuestas:
var ret = "data-123".replace('data-','');
console.log(ret); //prints: 123
Para todos los casos que se descartarán, use:
var ret = "data-123".replace(/data-/g,'');
PD: la función de reemplazo devuelve una nueva cadena y deja la cadena original sin cambios, así que use el valor de retorno de la función después de la llamada de reemplazo ().
Esto no tiene nada que ver con jQuery. Puede usar la replace
función JavaScript para esto:
var str = "data-123";
str = str.replace("data-", "");
También puede pasar una expresión regular a esta función. En el siguiente ejemplo, reemplazaría todo excepto los numéricos:
str = str.replace(/[^0-9\.]+/g, "");
0-9
se indicó.
Se puede utilizar "data-123".replace('data-','');
, como se ha mencionado, pero tan replace()
sólo se reemplaza el PRIMER aparición del texto coincidente, si su cadena era algo parecido a "data-123data-"
continuación,
"data-123data-".replace('data-','');
solo reemplazará el primer texto coincidente. Y tu salida será"123data-"
Entonces, si desea que todas las coincidencias de texto se reemplacen en una cadena, debe usar una expresión regular con la g
bandera de esa manera:
"data-123data-".replace(/data-/g,'');
Y tu salida será "123"
puede usar slice () returens charcters entre inicio y fin (punto final incluido)
string.slice(start , end);
Aquí hay algunos ejemplos para mostrar cómo funciona:
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"
Bastará con JavaScript antiguo: jQuery no es necesario para una tarea tan simple:
var myString = "data-123";
var myNewString = myString.replace("data-", "");
Ver: .replace()
documentos en MDN para información adicional y uso.
Ex:-
var value="Data-123";
var removeData=value.replace("Data-","");
alert(removeData);
Se espera que esto funcione para usted.
Estaba acostumbrado al método C # (Sharp) String.Remove. En Javascript, no hay una función de eliminación para la cadena, pero hay una función substr. Puede usar la función substr una o dos veces para eliminar caracteres de la cadena. Puede realizar la siguiente función para eliminar caracteres en el índice de inicio al final de la cadena, al igual que el método c # sobrecarga primero String.Remove (int startIndex):
function Remove(str, startIndex) {
return str.substr(0, startIndex);
}
y / o también puede realizar la siguiente función para eliminar caracteres en el índice de inicio y contar, al igual que la segunda sobrecarga String.Remove del método c # (int startIndex, int count):
function Remove(str, startIndex, count) {
return str.substr(0, startIndex) + str.substr(startIndex + count);
}
¡y luego puede usar estas dos funciones o una de ellas para sus necesidades!
Ejemplo:
alert(Remove("data-123", 0, 5));
Salida: 123
Esta pequeña función que hice siempre me ha funcionado :)
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!!
Sé que no es el mejor, pero siempre me ha funcionado :)
Usando match()
y Number()
para devolver una number
variable:
Number(("data-123").match(/\d+$/));
// strNum = 123
Esto es lo que hace la declaración anterior ... trabajando a medias:
str.match(/\d+$/)
- devuelve una matriz que contiene coincidencias a cualquier longitud de números al final de str
. En este caso, devuelve una matriz que contiene un único elemento de cadena ['123']
.Number()
- lo convierte a un tipo de número. Debido a que la matriz devuelta desde .match()
contiene un solo elemento Number()
devolverá el número.