[SP-pm] [offtopic] Regex e subpatterns no SED

caio ariede caio.ariede at gmail.com
Wed Aug 20 07:18:30 PDT 2008


Bom dia amigos.

Como o Wendell disse, os subpatterns também são utilizados para a criação de
expressões recursivas. Dependendo da utilização, você pode substituir um
subpattern (?n) por um (?R) também, porém não em todos os casos.

Os subpatterns, ao contrário do (?R), devem ser utilizados para casar
*parte* da expressão, um exemplo em Perl, utilizando subpatterns ficaria:

print '111(aa(bb(cc)))' =~ m/ \d+ ( \( ( (?>[^()]+) | (?1) )* \) ) /x;

Onde o "111" não faz parte do que é para ser recursivo.

E no exemplo abaixo, um caso onde o (?R) pode ser utilizado:

print '(aa(bb(cc)))' =~ m/ ( \( ( (?>[^()]+) | (?R) )* \) ) /x;

Pois, (?R) casaria a expressão por inteiro.

Não pude testar as expressões, pois aqui estou usando a versão 5.8.8 do
Perl, enquanto as expressões acima são compatíveis somente com a versão
5.10.

Enfim, o que eu queria saber "off-tópicamente" é se alguém já teve essa
experiência com SED, já li um pouco mais, e me parece que pra fazer isso em
SED tem que usar um lance de sub-rotinas própria da linguagem.

Aproveitando o tópico, quem tiver interesse em Expressões Regulares, pode
visitar o canal #regex.br na irc.freenode.net, onde discutimos o assunto
diariamente :)

Espero que o tópico tenha rendido algum aprendizado, apesar de ser
OFF-Topic, pois acho que todos estamos todos para isso.

E por favor, me corrijam se estiver enganado, pois não sou nenhum "expert"
no assunto, e se tiver algum erro de português ai, me descupem também. :)

abraços

2008/8/19 Solli Honorio <shonorio em gmail.com>

> Que meu amigo,
>
> Primeiro você esculacha o cara, e depois vai me deixar curioso em saber que
> mal o rapaz cometeu a ponto de ser condenado a fugueira.
>
> Paz no coração ...
>
> Solli M. Honório
>
> 2008/8/19 Luis Motta Campos <luismottacampos em yahoo.co.uk>
>
>> Lucas Mateus wrote:
>>
>>  Caio, mandou bem amigo, vamos aguardar a (resposta|justificativa|porrada)
>>> do autor agora !!!
>>>
>>
>> Não vai ter, não vou perder o meu tempo.
>>
>> --
>> Luis Motta Campos is a software engineer,
>> Perl Programmer, foodie and photographer.
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>
>
>
> --
> "o animal satisfeito dorme". - Guimarães Rosa
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>



-- 
Caio Ariede
http://caioariede.com/
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20080820/f62dfd6e/attachment.html>


More information about the SaoPaulo-pm mailing list