Filipe Kiss Postado Junho 4, 2007 Denunciar Share Postado Junho 4, 2007 (editado) É o seguinte, gostaria de um função que retornasse quantas vezes o padrão :[item]+[[:alnum:]]+:Se eu usar o ereg, ele retorna apenas a primeira vez que ele encontra.por exemplo:Temos o item :item456: e o item :item123: e mais um :item456:;Quando passado na minha função ele retorna apenas o :item456:Eu gostaria de uma função que retornasse, um array com todos os itensPor exemploArray ([0] => :item456:[1] => :item123:[2] => :item456;)Existe algum modo de se fazer isso?Desde já agradeço. Editado Junho 4, 2007 por Filipe Kiss Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 searching_ Postado Junho 4, 2007 Denunciar Share Postado Junho 4, 2007 faz uma função que passe o array e ela filtra as posições pelo ereg, se passar carrega num array. Depois retorna o array.sei lá... um exemplo por cima:function verificaItem($array){ foreach($array as $item){ $numero = substr($item,5,8); if(is_numeric($numero)) $ext = $numero; if($item == ":item".$ext) $retorno[] = $item; } return $retorno; }não sei qual é o padrão do ereg que você tá adotando, mas é só aplicar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Filipe Kiss Postado Junho 4, 2007 Autor Denunciar Share Postado Junho 4, 2007 (editado) Então cara... o problema é que eu não tenho esse array.Na verdade eu queria a função que lesse uma string e retirasse todos os padrões dela.Obrigado pela atenção--Edit--Se eu usar a split eu chego próximo. Ele desaparece com os valores que eu quero e fica somente com os valores que não combinam com aquela expressão.Ex.0=>Temos aqui o item1=> e mais uma vez o2=>--Edit de Novo--Consegui resolver galera. Muito obrigado.Aqui está a função do manualpreg_match_all("/:[item]+[[:alnum:]]+:/", $string, $arrays, PREG_SET_ORDER);e aqui está a que eu useifunction localiza_item($string){ preg_match_all("/:[item]+[[:alnum:]]+:/", $string, $encontrados, PREG_SET_ORDER); return $encontrados;} P.S. A Função retorna um Array Editado Junho 4, 2007 por Filipe Kiss Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Filipe Kiss
É o seguinte, gostaria de um função que retornasse quantas vezes o padrão :[item]+[[:alnum:]]+:
Se eu usar o ereg, ele retorna apenas a primeira vez que ele encontra.
por exemplo:
Temos o item :item456: e o item :item123: e mais um :item456:;
Quando passado na minha função ele retorna apenas o :item456:
Eu gostaria de uma função que retornasse, um array com todos os itens
Por exemplo
Array (
[0] => :item456:
[1] => :item123:
[2] => :item456;
)
Existe algum modo de se fazer isso?
Desde já agradeço.
Editado por Filipe KissLink para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.