Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

356
Views
¿Cómo eliminar texto de una cadena?

Tengo una cadena data-123 .

¿Cómo puedo eliminar data- de la cadena mientras dejo el 123 ?

over 4 years ago · Santiago Trujillo
13 answers
Answer question

0

Puede usar slice(), si sabe de antemano cuántos caracteres necesitan cortarse de la cadena original. Devuelve caracteres entre un punto de inicio dado y un punto final.

 string.slice(start, end);

Aquí hay algunos ejemplos que muestran cómo funciona:

 var mystr = ("data-123").slice(5); // This just defines a start point so the output is "123" var mystr = ("data-123").slice(5,7); // This defines a start and an end so the output is "12"

Manifestación

over 4 years ago · Santiago Trujillo Report

0

Usando match() y Number() para devolver una variable number :

const str = "data-123";
let strNum = Number(str.match(/\d+$/)); // strNum = 123

Esto es lo que hace la declaración anterior... trabajando en el medio:

  1. str.match(/\d+$/) - devuelve una matriz que contiene coincidencias con cualquier longitud de números al final de str . En este caso, devuelve una matriz que contiene un solo elemento de cadena ['123'] .

  2. Number() : lo convierte en un tipo de número. Debido a que la matriz devuelta por .match() contiene un solo elemento, Number() devolverá el número.

over 4 years ago · Santiago Trujillo Report

0

 var ret = "data-123".replace('data-',''); console.log(ret); //prints: 123

docs.


Para descartar todas las ocurrencias, 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 replace().

over 4 years ago · Santiago Trujillo Report

0

Bastará con JavaScript simple: jQuery no es necesario para una tarea tan simple:

 var myString = "data-123"; var myNewString = myString.replace("data-", "");

Ver:.replace() docs en MDN para información adicional y uso.

over 4 years ago · Santiago Trujillo Report

0

Esto no tiene nada que ver con jQuery. Puede usar la función de replace de 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 números:

 str = str.replace(/[^0-9\.]+/g, "");
over 4 years ago · Santiago Trujillo Report

0

Estaba acostumbrado al método String.Remove de C# (Sharp). 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 hacer la siguiente función para eliminar caracteres en el índice de inicio hasta el final de la cadena, al igual que el método c# primero sobrecarga String.Remove(int startIndex):

 function Remove(str, startIndex) { return str.substr(0, startIndex); }

y/o también puede hacer la siguiente función para eliminar caracteres en el índice de inicio y el conteo, al igual que el segundo método de sobrecarga de C# String.Remove(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

over 4 years ago · Santiago Trujillo Report

0

Puede usar "data-123".replace('data-',''); , como se mencionó, pero como replace() solo reemplaza la PRIMERA instancia del texto coincidente, si su cadena era algo así como "data-123data-" , entonces

 "data-123data-".replace('data-','');

solo reemplazará el primer texto coincidente. Y su salida será "123data-"

MANIFESTACIÓN

Entonces, si desea que todas las coincidencias de texto se reemplacen en una cadena, debe usar una expresión regular con la bandera g así:

 "data-123data-".replace(/data-/g,'');

Y su salida será "123"

DEMO2

over 4 years ago · Santiago Trujillo Report

0

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 cool!!"; string.deleteWord('the'); // Returns text is cool!!

Se que no es lo mejor, pero a mi siempre me ha funcionado :)

over 4 years ago · Santiago Trujillo Report

0

Ex:-

 var value="Data-123"; var removeData=value.replace("Data-",""); alert(removeData);

Se espera que esto funcione para usted.

over 4 years ago · Santiago Trujillo Report

0

str.split('Yes').join('No');

Esto reemplazará todas las apariciones de esa cadena específica de la cadena original.

over 4 years ago · Santiago Trujillo Report

0

Otra forma de reemplazar todas las instancias de una cadena es usar el nuevo método String.prototype.replaceAll() (a partir de agosto de 2020).

Acepta una cadena o RegEx como primer argumento y reemplaza todas las coincidencias encontradas con su segundo parámetro, ya sea una cadena o una función para generar la cadena.

En lo que respecta al soporte, en el momento de escribir este artículo, este método se ha adoptado en las versiones actuales de todos los principales navegadores de escritorio* (¡incluso Opera!), excepto IE. Para dispositivos móviles, iOS Safari iOS 13.7+ , Android Chrome v85+ y Android Firefox v79+ también son compatibles.

* Esto incluye Edge/ Chrome v85+, Firefox v77+, Safari 13.1+ y Opera v71+

A los usuarios les llevará tiempo actualizarse a las versiones de navegador compatibles, pero ahora que existe una amplia compatibilidad con navegadores, el tiempo es el único obstáculo.

Referencias:

  • MDN
  • Puedo usar - Información de soporte del navegador actual
  • Informe de propuesta TC39 para .replaceAll()

Puede probar su navegador actual en el siguiente fragmento:

 //Example coutesy of MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/replaceAll const p = 'The quick brown fox jumps over the lazy dog. If the dog reacted, was it really lazy?'; const regex = /dog/gi; try { console.log(p.replaceAll(regex, 'ferret')); // expected output: "The quick brown fox jumps over the lazy ferret. If the ferret reacted, was it really lazy?" console.log(p.replaceAll('dog', 'monkey')); // expected output: "The quick brown fox jumps over the lazy monkey. If the monkey reacted, was it really lazy?" console.log('Your browser is supported!'); } catch (e) { console.log('Your browser is unsupported! :('); }
 .as-console-wrapper: { max-height: 100% !important; }

over 4 years ago · Santiago Trujillo Report

0

Asegúrese de que si está reemplazando cadenas en un bucle, inicie un nuevo Regex en cada iteración. A partir del 21/09/21, este sigue siendo un problema conocido, ya que Regex esencialmente pierde todas las demás coincidencias. Esto me hizo dar un vuelco cuando me encontré con esto por primera vez:

 yourArray.forEach((string) => { string.replace(new RegExp(__your_regex__), '___desired_replacement_value___'); })

Si intenta hacerlo así, no se sorprenda si solo funcionan todos los demás.

 let reg = new RegExp('your regex'); yourArray.forEach((string) => { string.replace(reg, '___desired_replacement_value___'); })
over 4 years ago · Santiago Trujillo Report

0

1- Si son las secuencias en su cadena:

 let myString = "mytest-text"; let myNewString = myString.replace("mytest-", "");

la respuesta es texto

2- si desea eliminar los primeros 3 caracteres:

 "mytest-text".substring(3);

la respuesta es est-texto

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!