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

263
Views
Regex para hacer coincidir la cadena en una oración

Estoy tratando de encontrar una cadena estrictamente declarada en una oración, el hilo dice:

Encuentre la posición de la cadena "diez" dentro de una oración, sin usar la cadena exacta directamente (esto se puede evitar de muchas maneras usando solo un poco de RegEx). Imprima tantos espacios como caracteres había en la oración original antes de que apareciera la cadena antes mencionada, y luego la cadena misma en minúsculas.

He llegado hasta aquí:

 let words = 'A ton of tunas weighs more than ten kilograms.' function findTheNumber(){ let regex=/t[az]*en/gi; let output = words.match(regex) console.log(words) console.log(output) } console.log(findTheNumber())

El resultado debería ser:

 input = A ton of tunas weighs more than ten kilograms. output = ten(ENTER)
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puede probar un enfoque de reemplazo de expresiones regulares, con la ayuda de una función de devolución de llamada:

 var input = "A ton of tunas weighs more than ten kilograms."; var output = input.replace(/\w+/g, function(match, contents, offset, input_string) { if (!match.match(/^[t][e][n]$/)) { return match.replace(/\w/g, " "); } else { return match; } }); console.log(input); console.log(output);

La lógica anterior coincide con cada palabra en la oración de entrada, y luego reemplaza selectivamente cada palabra que no sea ten con el mismo número de espacios.

about 4 years ago · Juan Pablo Isaza Report

0

Puedes usar

 let text = 'A ton of tunas weighs more than ten kilograms.' function findTheNumber(words){ console.log( words.replace(/\b(t[e]n)\b|[^.]/g, (x,y) => y ?? " ") ) } findTheNumber(text)

El \b(t[e]n)\b es básicamente un patrón de búsqueda de ten palabras completas.

La expresión regular \b(t[e]n)\b|[^.] coincidirá y capturará ten en el Grupo 1 y coincidirá con cualquier carácter excepto . (ya que es necesario mantenerlo al final). Si el Grupo 1 coincide, se mantiene ( ten permanecen en la salida), de lo contrario, el carácter coincidente se reemplaza con un espacio.

Según los caracteres que desee conservar, puede ajustar el patrón [^.] . Por ejemplo, si desea mantener todos los caracteres que no son palabras, puede usar \w .

about 4 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 Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!