Hola,
Tengo una cadena como la siguiente:
INI hola FIN INI chau FIN
Yo quiero (mediante expresiones regulares) obtener lo que hay entre los INI - FIN.
Para ello utilizo la expresión siguiente:
INI(.*)FIN
El problema está en que esa expresión me devuelve hola FIN INI chau, por lo que la expresión debería ser algo como esto:
INI([^FIN]*)FIN
Pero aquí hay otro problema, si la cadena anteriormente dicha es de esta forma:
INI hola F hola FIN INI chau FIN
La expresión regular me devuelve sólo la palabra chau debido a que el circunflejo ( ^ ) está negando cualquier caracter de la clase [FIN], es decir [^FIN] me niega cualquier letra F, I o N.
Lo que yo quiero es que niegue la palabra completa (FIN), he visto en un manual que puedo usar el punto de esta manera para explicitar la palabra completa, pero no me da resultado alguno: [^.FIN].
También he probado con muchas combinaciones pero no funciona por ejemplo:
[^[.FIN]]
[^(FIN)]
Si me pueden dar una mano les agradecería mucho.
Un saludo,