• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

329
Views
Reemplace todo entre dos palabras, incluidas estas palabras

Cómo cambiar este tt /* a */ pp /* b */ dd a

 tt dd

esto no incluye el enlace a y b

 var test = "tt /* a */ pp /* b */ dd"; // expected: var res = "tt dd";

¿Es simple con expresiones regulares?

almost 3 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Si desea eliminar algo entre dos cosas, incluidas esas cosas, regex podría hacer el truco con bastante facilidad:

 const str = 'tt /* a */ pp /* b */ dd'; const start = '/\\* a \\*/'; const end = '/\\* b \\*/'; const pattern = new RegExp(`${start}.*${end}`, 'g'); const result = str.replace(pattern, ''); console.log(pattern); console.log(result);

Sin embargo, hay dos trampas.

El primero es de su elección de delimitador. Dado que tiene un * , que tiene un significado especial en expresiones regulares, debe asegurarse de escapar de él. Si elige un delimitador sin caracteres especiales para expresiones regulares, no tiene que hacerlo.

El otro problema no es tanto un problema como un problema de requisitos. Quería tt dd , pero obtendrá tt dd como lo describe (dos espacios), ya que ambos espacios están fuera de sus delimitadores.

Hay un par de maneras de lidiar con eso. Uno podría ser simplemente reemplazar dos o más espacios con un espacio:

 const str = 'tt dd'; const result = str.replace(/\s+/g, ' '); console.log(result);

almost 3 years ago · Juan Pablo Isaza Report

0

Si tt y dd varían, aquí hay una expresión regular que elimina lo que hay entre esas variaciones:

 const re = /\s+.*\/\s+/gm; let str = `tt /* a */ pp /* b */ dd`; str = str.replace(re,' '); console.log(str); // tt dd // Change tt and dd to aa and bb, instead, for example: str = `aa /* a */ pp /* b */ bb`; str = str.replace(re,' '); console.log(str); // aa bb

Si tt y dd no varían, no veo el sentido de usar una expresión regular; simplemente establecería (estáticamente) esa cadena en el valor deseado.

almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error