casar item dentro da url

4 views
Skip to first unread message

Hélio

unread,
Jul 4, 2013, 11:08:14 AM7/4/13
to expressoes...@googlegroups.com
Olá,

Tenho as seguintes opções:


Preciso achar o item c96569

Estou tentando assim, mas não está trazendo:

preg_match("/c[0-9]*\/?/", $subject,$matches);

tks
Hélio

Felipe Pena

unread,
Jul 4, 2013, 12:08:26 PM7/4/13
to expressoes...@googlegroups.com
Troca o * para +.

2013/7/4 Hélio <heliob...@gmail.com>:
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Expressões
> regulares" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para expressoes-regul...@googlegroups.com.
> Para postar neste grupo, envie um e-mail para
> expressoes...@googlegroups.com.
> Visite este grupo em http://groups.google.com/group/expressoes-regulares.
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>
>



--
Regards,
Felipe Pena

Thalles Robson

unread,
Jul 4, 2013, 12:23:23 PM7/4/13
to expressoes...@googlegroups.com
Hélio, veja se te atende.foreach($url as $k=>$v){

    preg_match("@.*(c[0-9]*).*@", $v,$matches);
    print_r($matches);

}

=== Retornou ===


Array ( [0] => http://www.teste.com.br/chaves/index/c96569/u87979/q9999 [1] => c96569 ) Array ( [0] => http://www.teste.com.br/chaves/index/c96569/u87979/ [1] => c96569 ) Array ( [0] => http://www.teste.com.br/chaves/index/c96569/ [1] => c96569 ) Array ( [0] => http://www.teste.com.br/chaves/index/c96569 [1] => c96569 )

2013/7/4 Hélio <heliob...@gmail.com>
Hélio

--
Você está recebendo esta mensagem porque se inscreveu no grupo "Expressões regulares" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para expressoes-regul...@googlegroups.com.
Para postar neste grupo, envie um e-mail para expressoes...@googlegroups.com.
Visite este grupo em http://groups.google.com/group/expressoes-regulares.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
 
 



--
Thalles Robson

Grandes líderes inspiram a grandeza em outras pessoas (Starwars)
    

Hélio

unread,
Jul 4, 2013, 1:13:03 PM7/4/13
to expressoes...@googlegroups.com
Muito bom... funcinou

Mas lendo (http://aurelio.net/regex/guia/mais.html) o mais é só mais exigente que o asterísco, como pode não funcionar com ele?

Em quinta-feira, 4 de julho de 2013 13h08min26s UTC-3, Felipe Pena escreveu:
Troca o * para +.

2013/7/4 Hélio <heliob...@gmail.com>:
> Olá,
>
> Tenho as seguintes opções:
>
> $url = 'http://www.teste.com.br/chaves/index/c96569/u87979/q9999';
> $url = 'http://www.teste.com.br/chaves/index/c96569/u87979/';
> $url = 'http://www.teste.com.br/chaves/index/c96569/';
> $url = 'http://www.teste.com.br/chaves/index/c96569';
>
> Preciso achar o item c96569
>
> Estou tentando assim, mas não está trazendo:
>
> preg_match("/c[0-9]*\/?/", $subject,$matches);
>
> tks
> Hélio
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Expressões
> regulares" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para expressoes-regulares+unsub...@googlegroups.com.

Felipe Pena

unread,
Jul 4, 2013, 1:31:43 PM7/4/13
to expressoes...@googlegroups.com
Acontece que na sua url você tem antes de c96569, outra ocorrência da
letra 'c'. Então ele acaba casando com o 'c' de chaves apenas, visto
que a parte numérica não é obrigatória.

Em 4 de julho de 2013 14:13, Hélio <heliob...@gmail.com> escreveu:
> Muito bom... funcinou
>
> Mas lendo (http://aurelio.net/regex/guia/mais.html) o mais é só mais
> exigente que o asterísco, como pode não funcionar com ele?
>
> Em quinta-feira, 4 de julho de 2013 13h08min26s UTC-3, Felipe Pena escreveu:
>>
>> Troca o * para +.
>>
>> 2013/7/4 Hélio <heliob...@gmail.com>:
>> > Olá,
>> >
>> > Tenho as seguintes opções:
>> >
>> > $url = 'http://www.teste.com.br/chaves/index/c96569/u87979/q9999';
>> > $url = 'http://www.teste.com.br/chaves/index/c96569/u87979/';
>> > $url = 'http://www.teste.com.br/chaves/index/c96569/';
>> > $url = 'http://www.teste.com.br/chaves/index/c96569';
>> >
>> > Preciso achar o item c96569
>> >
>> > Estou tentando assim, mas não está trazendo:
>> >
>> > preg_match("/c[0-9]*\/?/", $subject,$matches);
>> >
>> > tks
>> > Hélio
>> >
>> > --
>> > Você está recebendo esta mensagem porque se inscreveu no grupo
>> > "Expressões
>> > regulares" dos Grupos do Google.
>> > Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
>> > envie
>> > um e-mail para expressoes-regul...@googlegroups.com.
>> > Para postar neste grupo, envie um e-mail para
>> > expressoes...@googlegroups.com.
>> > Visite este grupo em
>> > http://groups.google.com/group/expressoes-regulares.
>> > Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>> >
>> >
>>
>>
>>
>> --
>> Regards,
>> Felipe Pena
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Expressões
> regulares" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para expressoes-regul...@googlegroups.com.

Hélio

unread,
Jul 4, 2013, 3:27:56 PM7/4/13
to expressoes...@googlegroups.com
da hora!! valew
>> > um e-mail para expressoes-regulares+unsub...@googlegroups.com.
>> > Para postar neste grupo, envie um e-mail para
>> > expressoes...@googlegroups.com.
>> > Visite este grupo em
>> > http://groups.google.com/group/expressoes-regulares.
>> > Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>> >
>> >
>>
>>
>>
>> --
>> Regards,
>> Felipe Pena
>
> --
> Você está recebendo esta mensagem porque se inscreveu no grupo "Expressões
> regulares" dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie
> um e-mail para expressoes-regulares+unsub...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages