
Preg_replace
#1
Posted 17/04/2007, 12:53
será que alguem poderia me dar uma dica sobre preg_replace?
achei bem legal a função preg_replace... eu estou tentando fazer com que ele "arrume" umas strings como por exemplo:
$contents = 'Testando3Testando';
$contents = preg_replace("/([0-9])/","",$contents);
ou seja contents vai retornar TestandoTestando sem o numero.
alguem sabe me dizer como eu faço pra ele apagar tudo que está depois do numero?
ou seja contents vai retornar Testando ao invez de TestandoTestando.
Muito Obrigado
ps: eu tentei preg_replace("/([0-9])*/","",$contents); mas ficou erraddissimo...
#2
Posted 17/04/2007, 20:28
Você precisa que seja apresentados apenas letras então
ou[a-zA-Z]
[^0-9]
Falopa!
#3
Posted 17/04/2007, 21:06
Mas respondendo com a expressão regular, você teria que casar com todo resto. E isso você faria com o ponto seguido de um quantificador. E como o ponto normalmente não casa com newlines, você teria que usar também o modificador s, para tornar Singleline.
Exemplo:
/\d.*/s
Mas volto a frisar, com esse intuito, usar split() com os 3 argumentos parece bem melhor.
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#4
Posted 17/04/2007, 21:32
Mas respondendo com a expressão regular, você teria que casar com todo resto. E isso você faria com o ponto seguido de um quantificador. E como o ponto normalmente não casa com newlines, você teria que usar também o modificador s, para tornar Singleline.



Falopa!
Edição feita por: hostdesigner, 18/04/2007, 14:20.
#5
Posted 18/04/2007, 10:33
@Eclesiastes
eu sou muito novo em programação php e fiquei boiando em coisas do tipo expressão regular e qualificador que você falou hahaha =\
@hostdesigner
Você quase pegou a minha idéia, de fato sim quero tirar o numero mas alem disso tudo que vem a direita do numero
exemplo
Teste9Formata
será exibido somente
Teste
o numero 9 e tudo que vem depois é retirado...
Edição feita por: Diogo a, 18/04/2007, 10:35.
#6
Posted 18/04/2007, 10:44
eu sou muito novo em programação php e fiquei boiando em coisas do tipo expressão regular e qualificador que você falou hahaha =\
Isso você pode aprender em http://guia-er.sf.net

----
Por exemplo:
list($str) = split('[0-9]', 'Teste5Teste', 2); print $str;
Ou:
print preg_replace('/\d.*/s', '', 'Teste5Teste');
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)