On The Rocks

October 5, 2006

Utilizar Regular Expressions

Filed under: Programming

Uma Regular Expression (Expressão Regular) é uma string que descreve ou agrupa um conjunto de strings, de acordo com regras de sintaxe, tem como finalidade encontrar num texto (conjunto de strings) uma string ou as strings iguais que  foram definidas na regular expression.

Como exemplo, podemos querer encontrar num ficheiro de HTML todos os valores de determinados elementos (Tags), para isso deveremos criar uma regular expression com o que queremos encontrar:

<elemento id="idelemento" >valor</elemento>

Esta é a sintaxe base dos elementos de HTML, mas como todos sabemos que pode existir variações. Por isso deveremos ter atenção hás combinações possíveis na construção de elementos de HTML. Para isso utilizamos a seguinte regular expression:

<TAG\b[^>]*>(?<VALOR>.*?)</TAG> 

Esta regular expression significa querenos encontrar tudo que comece por <TAG e de seguida contenha palavras \b até encontrar o caracter ">" [^>], tudo o que estiver entre <TAG\b[^>]*> e </TAG> deverá ser guardado num grupo chamado VALOR .

Esta regular expression pode ser utilizada em código  para efectuar pesquisas, como no seguinte exemplo em C#:

 

string ResultString = null;
try
{
    Regex RegexObj = new Regex("<TAG\\b[^>]*>(?<VALOR>.*?)</TAG>");
    ResultString = RegexObj.Match(<Texto a Pesquisar>).Groups["VALOR"].Value;
} catch (ArgumentException ex) {
    // Syntax error in the regular expression
}

 

Como consulta de Referencia:

http://www.regular-expressions.info

Comments »

The URI to TrackBack this entry is: http://ontherocks.blogsome.com/2006/10/05/utilizar-regular-expressions/trackback/

No comments yet.

RSS feed for comments on this post.

Leave a comment

Line and paragraph breaks automatic, e-mail address never displayed, HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>



Anti-spam measure: please retype the above text into the box provided.

Get free blog up and running in minutes with Blogsome
Theme designed by Jay of onefinejay.com