Estoy queriendo crear una expresión regular para el siguiente escenario:Regex - Si contiene '%', sólo puede contener '% 20'
Si una cadena contiene el carácter de porcentaje (%
) entonces sólo puede contener lo siguiente: %20
, y no puede ir precedido por otro '%
'.
Si hubiera, por ejemplo, %25
, sería rechazado. Por ejemplo, la siguiente cadena sería válida:
http://www.test.com/?&Name=My%20Name%20Is%20Vader
Pero estos fallaría:
http://www.test.com/?&Name=My%20Name%20Is%20VadersAccountant%25
%%%25
Cualquier ayuda sería muy apreciada,
Kyle
EDIT:
El escenario en pocas palabras es un enlace que se escribe en un estado codificado y luego puso en marcha a través de JavaScript. No funciona la decodificación. Probé decodificación de .net y decodificación de JS, cada uno con el mismo resultado: los resultados permanecen codificados cuando se ejecutan.
¿No sería más fácil hacer esto sin expresiones regulares? ¿Comprobar que el número de apariciones de '%' es exactamente igual al número de apariciones de '% 20'? Por mi parte, encontraría eso mucho más fácil de leer. –
Lamentablemente, no en este escenario. –
Quizás deba describir el escenario. –