sé que hay varias preguntas sobre la recursión de expresiones regulares en .net. Puedo escribir expresiones regex algo complejas pero esta recursión está más allá de mí, simplemente no puedo escribirla.obtener patrones internos recursivamente usando regex C#
Estas son las preguntas más cercanas a lo que quiero.
first question,second question.
pero coincide con toda la cadena, quiero que las coincidencias en una colección preferiblemente la más interna coincidan primero o en algún orden. También coincide en un personaje de apertura y un personaje de cierre. El mío es 2 caracteres para abrir y cerrar, [! y!]
mi cadena de entrada será algo como esto.
[!a='test' b='[!a='innertest' b='innervalue'!]'!]
Tengo que encontrar la sección innertest, [!a='innertest' b='innervalue'!],
primero y luego evaluarla a través de uno de mis árboles de expresión. luego evalúa el padre que lo contiene.
¿Alguien puede ayudar con esto?
esto se ve bien .. Gracias por su ayuda. Voy a probarlo. ¿Hay alguna manera de decir el orden, como más interna primero, ya que primero debo evaluarlo? –
No directamente. Podría resolverlo utilizando las propiedades 'Capture.Start' y' Capture.Length' para cada captura, ya que eso le permitirá saber qué capturas contienen qué otras capturas. Sin embargo, si cada 'x = '...'' solo puede depender de lo que contenga, entonces esta orden debería funcionar bien. – porges
está muy cerca de lo que quiero. gracias por su esfuerzo. ¡Debes ser un genio! Una última pregunta sobre esto. Si quisiera cambiar las etiquetas de apertura y cierre a [} y {], en lugar de [!,!], ¿Cómo va a | \ w + = '(?! \ [!) [^'] * '| cambio de sección Intenté algunas cosas pero no las capturé. –