elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [python] expresión regular con or |
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [python] expresión regular con or |  (Leído 3,539 veces)
Kase


Desconectado Desconectado

Mensajes: 1.288


programa bonito ¬¬


Ver Perfil WWW
[python] expresión regular con or |
« en: 15 Enero 2012, 10:08 am »

necesito ayuda con esta exprecion...

exprecion = re.compile ( '\[palabra: ?(\'|")([- a-zA-Z0-9]*)(\'|") ? \]' )

lo que hace es buscar la cadena  [palabra: 'valor']  

puedo hacer esto.  

valores =  exprecion.search( "lalalalala [palabra: 'no tengo idea']")

y en
valores.group(0)  = [palabra: 'no tengo idea']
valores.group(1) = '
valores.group(2) = no tengo idea
valores.group(3) = '

mi problema es que no quiero   group(1) y group(3)
necesito eliminar  el ('|") de la exprecion regular.. que busca ' o ¨
pero no necesito eliminar el  "or"  osea el    '|"
si le quito los parentesis la exprecion no funciona... exite algun caracter similar a los  ()  pero que solo sirva para delimitar y no para indicar que quiero optener ese valor?


se que puedo hacer esto otro:

exprecion = re.compile ( '\[palabra: ?(\'|")(?P<valor>[- a-zA-Z0-9]*)(\'|") ? \]' )

y entonces poder hacer:

valor.group('valor') = no tengo idea ...


el motivo de mi pregunta es conocer si existe algun caracter similar al los ( ) pero que solo sirvan para delimitar

PD:  [- a-zA-Z0-9]*  me refiero a que pueda tener cualquier caracter entre a-z, A-Z , 0 - 9  , "-" y " " (espacios en blanco)  enrrealidad tambien  necesito que tenga acentos y ñ  pero no tengo idea como simplificar  [-áéíóúÁÉÍÓÚñÑ¿?!¡()* a-zA-Z0-9]*
o en otras palabras  un  \w*  que excluya [ ] y que no confunda el ultimo '  o "   :-\


« Última modificación: 17 Enero 2012, 17:30 pm por Leo Gutiérrez. » En línea

SirLanceCC


Desconectado Desconectado

Mensajes: 1.093


Ver Perfil WWW
Re: [python] exprecion regular con or |
« Respuesta #1 en: 16 Enero 2012, 20:49 pm »

Tomado de http://docs.python.org/library/re.html
Citar
(?:...)
    A non-capturing version of regular parentheses. Matches whatever regular expression is inside the parentheses, but the substring matched by the group cannot be retrieved after performing a match or referenced later in the pattern.

O podrías usar [AB] que coindidirá con un caracter, ya sea A o B, pero ningún otro. En tu caso usarías alo como ["'].


En línea

Kase


Desconectado Desconectado

Mensajes: 1.288


programa bonito ¬¬


Ver Perfil WWW
Re: [python] exprecion regular con or |
« Respuesta #2 en: 17 Enero 2012, 17:21 pm »

jajajaja...
aveces la respuesta es obvia y no la vemos  :P

gracias
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Expresión regular « 1 2 3 »
PHP
IWKY 29 19,530 Último mensaje 25 Enero 2010, 23:57 pm
por ~ Yoya ~
ayuda con una expresion regular :(
Programación General
Elemental Code 6 4,153 Último mensaje 23 Mayo 2012, 04:10 am
por Elemental Code
duda sobre patron de expresion regular
Programación General
MagnusIvanovich 5 3,077 Último mensaje 14 Marzo 2013, 20:11 pm
por 1mpuls0
Duda expresion regular en Python
Programación General
AngelFire 1 2,702 Último mensaje 4 Mayo 2018, 04:40 am
por AngelFire
Buscar cadena usando expresión regular. Python
Scripting
OssoH 3 2,199 Último mensaje 25 Octubre 2022, 15:36 pm
por OssoH
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines