Parsing de IP utilizando PHP+REGEX

No meio de época exames/frequências e muito trabalho arranjei um bocado de tempo para colocar aqui o último snippet que escrevi para fazer parsing de um ficheiro que contém uma lista de IP’s e portas onde correm serviços de proxy.
Isto porque ando a experimentar configurações mais avançadas em ferramentas como o proxychains que nas suas configurações exigem um esquema especifico para proxys.

Syntax necessária: http ip porta
Syntax do ficheiro: ip:porta

Snippet

$url = 'http://blackhatbootcamp.net/proxies/data/ultimate_proxies.txt';

	preg_match_all('/[0-9]{1,3}+\.[0-9]{1,3}+\.[0-9]{1,3}+\.[0-9]{1,3}+\:[0-9]{2}/', file_get_contents($url), $matches); 
	
	$size=sizeof($matches[0]);
	foreach($matches as $var) {
		for($i=0; $i< $size; $i++)
			echo preg_replace('/(\d{1,3}).(\d{1,3}).(\d{1,3}).(\d{1,3}):(\d{2})/', "http $1.$2.$3.$4 $5
", $var[$i]); }

Sei que python e PERL têm uma grande capacidade de utilização de REGEX, se andarem por aí conhecedores do assunto podem partilhar os snippets aqui 😉

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.