Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Schaiden en 2 Febrero 2017, 08:51 am



Título: Encontrar una cadena en el final de otra en python
Publicado por: Schaiden en 2 Febrero 2017, 08:51 am
Muy buenas a todos! Lo que necesito hacer es saber si una cadena está contenida en el final de otra, la segunda puede tener caracteres indefinidos. Por ejemplo, quiero saber si la palabra:

'tacoman33'

está incluida en el final de:

'SL.D....t..om..33'

Siendo '.' un caracter indefinido, o 'comodín'.

supongamos que 'tacoman33' es el valor de una variable cadena1 y 'SL.D....t..om..33' el valor de una variable cadena2.

En ésta caso, tacoman33 sí puede llegar a ser el final de dicha cadena, entonces, en éste caso, se imprimiria el valor de cadena1.

Si la cadena2 fuera:

'SL.D....t..om..33....'

en éste caso, debería ser falso y no imprimir nada, ya que cadena2 no podría terminar nunca en tacoman33 ya que hay 4 caracteres más luego del 33.

Espero que me hayan entendido. Saludos!


Título: Re: Encontrar una cadena en el final de otra en python
Publicado por: engel lex en 2 Febrero 2017, 11:20 am
creo que lo que buscas son expresiones regulares (regex)


Título: Re: Encontrar una cadena en el final de otra en python
Publicado por: Sk9ITk5Z en 10 Febrero 2017, 00:30 am
Código
  1. import re
  2. lista_dom = ['.com', '.es']
  3. for elemento in lista_dom:
  4.    if re.search('es$', elemento):
  5.        print(elemento)  # .es
  6.  
  7.  

se supone que con $ te buscaal final de la cadena, pero en este caso busca la cadena final de la lista, no se si te funcione asi...