Primeiro post do ano!!!

Vou comentar hoje sobre dois métodos do meu humilde projeto open-source, o JPO.Helper. Para quem quiser saber mais sobre o projeto, eu comentei em outro post.

Vamos fazer um projeto bem simples em que iremos retornar URL´s (links) contidos em um documento html de algum site qualquer.

Vamos criar um novo ConsoleApplication e renomeie para PegaURL e referencie o projeto JPO.Helper a nossa solução.

Iremos usar duas namespaces, a JPO.Net e a JPO.Strings. A JPO.Net possui o método RetornaHtml que retorna o conteúdo html de uma uri qualquer e a JPO.Strings o método BuscaExpressao que nos retornará uma coleção de resultados que estamos buscando.

De início:

using System;
using System.Text;

using JPO.Net;
using JPO.Strings;

namespace PegaURL
{
class Program
{
static void Main(string[] args)
{
}
}
}

A página em que estaremos buscando URL´s é a index do Programando em .NET.

Para pegarmos o conteúdo html de qualquer site, usaremos o método estático RetornaHtml da classe cHtml.

string MeuHtml = cHtml.RetornaHtml(new Uri("http://programandoem.net"));

Agora o objeto MeuHtml já está preenchido, cheio de URL´s a serem buscadas :)

Iremos retornar o conteúdo da nossa pesquisa para um objeto MeusResultados da classe System.Text.RegularExpressions.MatchCollection.

MatchCollection MeusResultados = cRegex.BuscaExpressao(MeuHtml, cRegex.PatternRegex.Url);

Pronto, agora é só exibir os resultados com um foreach da vida, olha tudo pronto:

using System;
using System.Text;
using System.Text.RegularExpressions;

using JPO.Net;
using JPO.Strings;

namespace PegaURL
{
class Program
{
static void Main(string[] args)
{
string MeuHtml = cHtml.RetornaHtml(new Uri("http://programandoem.net"));

MatchCollection MeusResultados = cRegex.BuscaExpressao(MeuHtml, cRegex.PatternRegex.Url);

foreach (Match MeuItem in MeusResultados)
{
Console.Write(MeuItem + "\n");
}

Console.Read();
}
}
}

Notem
BuscaExpressao(MeuHtml, cRegex.PatternRegex.Url);

PatternRegex é um enumerador com várias opções. Ele que será nosso atalho para os patterns de expressão regular mais importantes.

O Retorno será parecido com esse:

Meus Resultados

Rápido né? Isso com a ajuda da JPO.Helper.

Alguns patterns podem ser melhorados, muita coisa pode ser melhorada e quem quiser usar os códigos em algum projeto próprio sem usar a JPO.Helper pode usar, desde que ajude na evolução do framework.

Baixe o exemplo PegaUrl já com o JPO.Helper

Logo publicarei um pequeno projeto para mobile. Aguardem!!!

[]´s

Depois de passar nervoso com servidor de CVS do Sourceforge e mudar o serviço de versionamento para o Subversion e ainda sim não conseguir, eu mudei! Tirei o projeto do SourceForge. (uma pena, pois sou fã do SourceForge e ainda pretendo colocar o projeto lá)

Agora é Google Code!

Lá eu na hora já joguei o projeto no ar com o TortoiseSVN sem ter maiores problemas.
Por enquanto só disponibilizei o código fonte até porquê escrevi apenas alguns métodos que eu utilizei um uma pequena aplicação que fiz.

A página do projeto Jpo.Helper já esta com o novo link neste e no primeiro post que escrevi sobre o projeto.

Logo estarei escrevendo um pouco sobre quais as minhas idéias para o projeto.

[]´s

,

Sempre foi uma vontade minha ter um blog para compartilhar com a comunidade de programadores brasucas as minhas idéias e tudo que eu ando estudando sobre .NET.

E assim CHEGAMOS!

Nesse primeiro post quero divulgar o lançamento do (também) meu primeiro projeto OPEN SOURCE!

É uma pequena biblioteca onde pretendo (junto com a ajuda de todos) inserir vários “helpers”. Uma framework amigona!

Logo disponibilizo os códigos!

Por enquanto fica o link!
Projeto Jpo.Helper

“Conto com a ajuda de vocês”

[]´s