0 votos
preguntado por Daniel Pozzi May 24, 2015 en General

1 Respuesta

0 votos
Te podría servir algo como: XXX.*ZZZ.*YYY

Tienes más información en http://jarroba.com/busqueda-de-patrones-expresiones-regulares/
respondido por Ramon [Admin] May 27, 2015
Quizá mi pregunta fue demasiado escueta. Necesito encontrar en el texto siguiente por ejemplo el párrafo completo que empiece con [RGN40], termine con [END-RGN40] y contenga  RoadId=168014 (Puede ser otro el contenido).

[RGN10]
Type=0x2f01
Label=ESSO
CountryName=ARGENTINA~[0x1d]ARG
RegionName=CHUBUT~[0x1d]CHT
CityName=PUERTO MADRYN
Origin0=(-43.25650,-65.30118)
[END-RGN10]

[RGN40]
Type=0x6
Label=DEMOCRACIA
CountryName=ARGENTINA~[0x1d]ARG
RegionName=CHUBUT~[0x1d]CHT
CityName=PUERTO MADRYN
Zip=9120
RoadID=168014
RouteParam=2,0,0,0,0,0,0,0,0,0,0,0
Data0=(-42.75385,-65.04640),(-42.75396,-65.04582)
Nod1=0,11381,0
Nod2=1,11382,0
[END-RGN40]

[RGN40]
Type=0x6
Label=LAPRIDA
DirIndicator=1
CountryName=ARGENTINA~[0x1d]ARG
RegionName=CHUBUT~[0x1d]CHT
CityName=PUERTO MADRYN
Zip=9120
RoadID=168015
RouteParam=2,0,1,0,0,0,0,0,0,0,0,0
Data0=(-42.77057,-65.04344),(-42.77050,-65.04355),(-42.77012,-65.04432)
Nod1=0,13464,0
Nod2=1,11611,0
Nod3=2,11601,0
[END-RGN40]

 

Muchas gracias por tu atención, sigo rompiendome la cabeza, te agradezco el esfuerzo.

Para encontrar lo que necesitas te valdría algo como:

\[RGN40\](?:.*\n)*\[END-RGN40\]

 

No encuentra nada... no veo donde esta el patron de busqueda, en este caso de ejemplo era RoadId=168014

Disculpa mi ignorancia.

A mí si me funciona. He añadido lo que faltaba, prueba:

\[RGN40\](?:.*\n)*(?=RoadID=168014)(?:.*\n)*\[END-RGN40\]

Puedes probarlo en la siguiente web que sirve para probar expresiones regulares online: https://regex101.com/

Dusculpa, soy muy burro, no me funciona. Lo estoy probando en editpadpro y RegexBuddy usando el txt que te pase.
¿Has comprobado si es por la falta de delimitadores? La anterior expresión regular que te pasé está sin delimitadores.
Pego el txt de ejemplo en NotePad Pro y en el cuadro de busqueda pongo exactamente

\[RGN40\](?:.*\n)*(?=RoadID=168014)(?:.*\n)*\[END-RGN40\]

y tildo Regular Expression. No encuentra nada.

Que estoy haciendo mal??
No te puedo ayudar con el NotePad. Pero las búsquedas de estos programas admiten expresiones regulares simples (asteriscos y poco más).
Gracias Ramón, quiza sea eso. Te agradezco el esfuerzo!