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

99
Views
Regex O dejar de hacer coincidir en la primera palabra

Estos son los datos que recibo:

Quiero obtener solo el mensaje de la pregunta. Es posible que mi pregunta sea en varias líneas. Para eso puse "/s" al final de mi expresión regular.

Mi expresión regular es: /question : ((.|)*)\n?(line_1|line_2)/s

Ejemplo 1:

 question : this is my question line_1: 0 line_2: 1

Ejemplo 2:

 question : this is my question line_2: 1

Para mi ejemplo 2, está bien, pero para el ejemplo 1, la condición "o" no se detiene en la primera aparición encontrada, ¿tiene una solución? Gracias por tu ayuda

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

0

Puedes usar

 question\s*:\s*(\S.*(?:\r?\n.+)*)

Vea la demostración de expresiones regulares . Tenga en cuenta que agregué \r? porque el . en JavaScript no coincide con los retornos de carro.

Si line_1 y line_2 son line_ + dígitos y deben estar presentes, inclúyalos como

 question\s*:\s*(\S.*(?:\r?\nline_\d.*)*)

Vea esta demostración de expresiones regulares .

Detalles :

  • question - una palabra
  • \s*:\s* - dos puntos encerrados con cero o más espacios en blanco
  • (\S.*(?:\r?\nline_\d.*)*) - Grupo 1:
    • \S - un carácter sin espacios en blanco
    • .* - el resto de la línea
    • (?:\r?\nline_\d.*)* - cero o más líneas que comienzan con line_ y un dígito y luego el resto de la línea puede tener caracteres. (?:\r?\n.+)* coincide con cero o más líneas no vacías (de longitud cero).
about 4 years ago · Juan Pablo Isaza Report

0

Gracias por la respuesta y siento no haberme explicado bien.

Mi línea_1 y línea_2 son 2 palabras diferentes y me gustaría que se excluyan de mi grupo 1. Otra condición: el mensaje puede estar en varias líneas.

Te pongo un ejemplo mejor:

 question: **This message can be on several lines. Continuation of the message end of the message** currency_mortgage : 0 property_alert: 1

A veces, "currency_mortgage" no está allí, por lo que tenemos:

 question: **This message can be on several lines. Continuation of the message end of the message** property_alert: 1

No sé cómo detener la captura del grupo 1 antes de "property_alert" o "currency_mortgage" para tomar realmente solo el contenido del mensaje.

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!