Jump to content

Recommended Posts

Posted (edited)

Boas p@p,

Tenho esta frase:

$frase = " [blblbabal] isto é uma frase";

E agora como é que faço para obter o texto que está após o último parêntesis recto "]" ?

Ou seja quero obter "isto é uma frase" sem aquele espaço inicial no meio.

Estava a tentar com regex mas ainda não consegui, alguma sugestão?

Edit: acho que estou quase lá

preg_match('/]\s*(.*$)/i',$frase,$matches);

Mais um Edit:

preg_match('/]\s*(.*$)/i',$frase,$matches);

Bem cheguei a este regex, ( mas parece que seja muito básico 😕 )

Edited by Devexz

Contador de calorias: caloriaspordia.com

Posted

Ok, eu cheguei a isto:

preg_match('/\](.*)/si',$emailBody,$matches);

$frase = " [blblbabal]		   isto é uma
frase";

$stripped = trim(str_replace(array("\n", "\r"), "", preg_match("/(?<=]).*/i", $frase)[0]));
echo $stripped; // "isto é uma frase"

Thanks hippo a tua maneira também funcionou.

Agora a questão é qual seria a maneira mais "correta" ( obvio que será do hippo, mas...) ?

Outra coisa, deixa me ver se percebi a lógica do teu código:

- primeiro fazer o preg_match para obter o texto que está a partir do ]

- Depois substituir os \n \r com ""

- E de seguida fazer trim para remover os espaços vazios do inicio e do fim.

Contador de calorias: caloriaspordia.com

Posted

Agora a questão é qual seria a maneira mais "correta" ( obvio que será do hippo, mas...) ?

depende sempre da possibilidade de aparecer código que sai fora do padrão escolhido

Outra coisa, deixa me ver se percebi a lógica do teu código:

- primeiro fazer o preg_match para obter o texto que está a partir do ]

- Depois substituir os \n \r com ""

- E de seguida fazer trim para remover os espaços vazios do inicio e do fim.

sim é isso que o meu código faz

  • Vote 1
IRC : sim, é algo que ainda existe >> #p@p

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.