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

144
Views
Coincidencia de cadena de Javascript con múltiples ocurrencias

Hola chicos, estoy tratando de codificar esta función en javascript para alertar al (texto) que coincide con la cadena que estoy buscando, así que si la cadena es (número 5656), el código buscará el número que existe después del espacio después de la palabra ( número) y alertarlo al cliente, por lo que el problema es que necesito el Código para imprimir cada número solo, como si la cadena fuera (número 5656 número 4646), quiero que alerte a todos los números, cada número solo, así que probé esto

 ({ data: { text } }) => { var rx = new RegExp( '\\s(\\w+)' ); var txt = text; var mtc = []; while( (match = rx.exec( txt )) != null ) { alert( match[1] ); mtc.push(match[1]); } })

Y da una alerta infinita para el número después de la cadena, no solo dos veces

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Actualmente, siempre está encontrando la misma ocurrencia. Puede agregar la bandera global o la bandera adhesiva para almacenar la posición de la última aparición y buscar la siguiente aparición:

 ({ data: { text } }) => { var rx = new RegExp( '\\s(\\w+)', 'g' ); var txt = text; var mtc = []; while( (match = rx.exec( txt )) != null ) { alert( match[1] ); mtc.push(match[1]); } }

Los objetos RegExp de JavaScript tienen estado cuando tienen los indicadores fijos o globales establecidos (por ejemplo /foo/g o /foo/y ).

MDN

 const f = ({ data: { text } }) => { var rx = new RegExp( '\\s(\\w+)', 'g' ); var txt = text; var mtc = []; while( (match = rx.exec( txt )) != null ) { alert( match[1] ); mtc.push(match[1]); } }; f({ data: { text: 'number 5656 number 4646' } });

about 4 years ago · Juan Pablo Isaza Report

0

Puede usar String.match() para buscar grupos de 1 o más dígitos ( \d+ ) con la bandera global ( g ). Luego recorra los partidos y avíselos.

 let input = 'number 5656 number 4646'; let matches = input.match(/(\d+)/g); matches.forEach(m => alert(m));

Dado que esto está claramente relacionado con su otra pregunta sobre tesseract.js, solo voy a agregar este ejemplo completo:

 Tesseract.recognize(image,lang).then(result => { let matches = result.data.text.match(/(\d+)/g); matches.forEach(m => alert(m)); });
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!