• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

cyclop

Expressões regulares

6 mensagens neste tópico

Ora viva, desculpem se estou a dizer uma barbaridade qqr... mas pronto... resumindo...

preg_replace('/{qqrcoisa="(.*?)"}/', ${$array}[$i]['\\1'], strtolower($texto))

a ideia era substituir akela {qqrcoisa="qqcoisa"} pelo conteudo de uma array que está dentro de um for, ou while por exemplo... até lá vou continuar a ler a biblia visto que nao sou expert em expressões regulares... se por acaso descubrir, posto aqui a solução :P

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Isso é facil.

$atributes_array = array('qqcoisa="qqcoisa"', 'outracoisa="outracoisa"');

foreach( $atributes_array as $atribute){
    preg_replace("/$atribute/", ${$array}[$i]['\\1'], strtolower($texto))
}

A reter neste exemplo:

-O ciclo foreach ( ve no manual )

-O uso de plicas simples ou duplas. Estas ultimas expandem variáveis as primeiras não

Outras coisas que podia ter usado em alternativa:

-Escape de caracteres especiais com uma barra descendente ( \ )

-Concatenação de strings com o operador ponto ( . )

Verifica isto tudo no manual

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

a ideia aqui... é alguem escrever {item="campo"} o codigo pegar nisso, retornar a array como sendo $array[posiçãoDoPonteiro][campo] ...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

a ideia aqui... é alguem escrever {item="campo"} o codigo pegar nisso, retornar a array como sendo $array[posiçãoDoPonteiro][campo] ...

Não estou a perceber o que queres, importas-te de explicar melhor?

Queres uma expressão regular para parsar essa string? é isso?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

epa... então não estou a ver qual é o problema da tua regex, devia funcionar...

que me lembre os caracteres = e " não precisam de ser escapados...

mas n sei... experimenta escapa-los...

Mas olha que não me parece que o problema é da regex em si.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora