Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: .:UND3R:. en 5 Abril 2015, 00:40 am



Título: [PYTHON]Localizar string
Publicado por: .:UND3R:. en 5 Abril 2015, 00:40 am
Hola a todos tengo la siguiente string dentro de un texto:
Citar
......
...
var ssidList = [
{enable:"1",ssid:"HOLA"}
];
..
.

¿Cómo podría obtener HOLA sabiendo que esta palabra puede cambiar pero su entorno no?

mi idea sería localizar {enable:"1",ssid:" tomar su índice y luego desde ese lugar buscar "} y obtener su índice, y extraer con una especie substring entregando los dos índices extraídos anteriormente, bueno es solo una idea a ver si me ayudan, gracias :D


Título: Re: [PYTHON]Localizar string
Publicado por: engel lex en 5 Abril 2015, 00:53 am
siendo str donde contienes la palabra
Código
  1. buscar = '{enable:"1",ssid:'
  2. inicio = str.find(buscar)
  3. fin = str.find("}",inicio)
  4. salida = str[inicio+len(buscar):fin]

si no me equivoco con eso lo tienes (si no quieres las comillas +1 a inicio -1 a fin)


Título: Re: [PYTHON]Localizar string
Publicado por: Eleкtro en 5 Abril 2015, 01:33 am
Otra solución sería utilizando expresiones regulares:

Código
  1. import re
  2.  
  3. pattern = re.compile('(.+)?enable:"1",ssid:"(.+)"(.+)?', re.IGNORECASE)
  4.  
  5. with open('C:/archivo.txt', 'r') as textfile:
  6.    for match in re.finditer(pattern, textfile.read()):
  7.        print match.group(2)

Saludos!


Título: Re: [PYTHON]Localizar string
Publicado por: .:UND3R:. en 5 Abril 2015, 05:24 am
Maestros!!!  ;-) ;-) ;-)

Lo pondré a prueba ambos resultados, saludos y muchas gracias :D