djthyrax Posted April 25, 2008 at 12:15 AM Report Share #181142 Posted April 25, 2008 at 12:15 AM Excerto de uma conversa no #p@p onde dei uma breve explicação de como funciona o substr() e como o usar para obter o texto entre 2 caracteres, neste caso < e >. <NRAM> como retiro a primeira letra e a ultima letra de uma string em php? <djthyrax> NRAM, dá uma olhada à substr() <NRAM> djthyrax o substr() retira caracteres < > ?? ou passa por eles? <djthyrax> o substr() não olha para os caracteres. <NRAM> pois <djthyrax> vai para o coiso de inicio, anda as posições que dizes, e mostra-te o resultado. <NRAM> eu quero <NRAM> <202> que retire os <> <NRAM> e deixe o numero <djthyrax> man, <djthyrax> vês a posição do > <djthyrax> tiras-lhe a posição do < <djthyrax> e ficas logo a saber quantos caracteres é que ele tem de andar. <NRAM> tipo substr($var, ESTE RETIRA QUAL?, ESTE RETIRA QUAL? ); <djthyrax> substr($var, strpos('<', $var), strpos('>', $var)-strpost('<', $var)); <djthyrax> aliás, <djthyrax> substr($var, strpos('<', $var), strpos('>', $var, strpos('<', $var))-strpost('<', $var)); se tiveres mais que um < ou > na string. <djthyrax> em principio isto serve NRAM <djthyrax> substr(texto, posicao no texto onde ele comeca a devolver, quantidade de caracteres a devolver) <djthyrax> ou seja, <djthyrax> texto -> $var <djthyrax> posicao no texto -> strpos('<', $var) <djthyrax> quantidade de caracteres é a distância entre a posição do < e do > <djthyrax> logo <djthyrax> strpos('>', $var)-strpos('<', $var) <djthyrax> ^ NRAM <djthyrax> percebeste a explicação? <NRAM> yes sir.. 😉 thanks! 😉 XD Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum! Link to comment Share on other sites More sharing options...
Guest id194 Posted April 25, 2008 at 12:21 AM Report Share #181143 Posted April 25, 2008 at 12:21 AM What's the point? O manual do PHP explica isso de forma mais simples... E acho estúpido a forma para se sacar o texto entre < e >. É muito mais simples usar regex. Link to comment Share on other sites More sharing options...
djthyrax Posted April 25, 2008 at 12:23 AM Author Report Share #181144 Posted April 25, 2008 at 12:23 AM What's the point? O manual do PHP explica isso de forma mais simples... E acho estúpido a forma para se sacar o texto entre < e >. É muito mais simples usar regex. O < e > são apenas um exemplo, e nem sempre regex é solução. Anyway, ele não tinha lá ido com a página no manual (aliás, não deve é ter lá posto os pés...), daí ter feito esta explicação.EDIT: Como me vieram moer o juízo por ter simplesmente posto aqui o que escrevi no IRC, quando me lembrar faço algo como deve ser. 😉 Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum! Link to comment Share on other sites More sharing options...
Guest id194 Posted April 25, 2008 at 01:02 AM Report Share #181152 Posted April 25, 2008 at 01:02 AM Eu não disse que regex era sempre a solução, mas assim à primeira vista, o que me pareceu melhor foi regex porque o código que tu deste é demasiado complexo para uma coisa tão simples. E nem se quer faz sentido usar essas funções só para se sacar o texto entre < e >. Link to comment Share on other sites More sharing options...
djthyrax Posted April 25, 2008 at 01:05 AM Author Report Share #181153 Posted April 25, 2008 at 01:05 AM Eu não disse que regex era sempre a solução, mas assim à primeira vista, o que me pareceu melhor foi regex porque o código que tu deste é demasiado complexo para uma coisa tão simples. E nem se quer faz sentido usar essas funções só para se sacar o texto entre < e >. Sim, neste exemplo, regex era de facto a melhor solução, mas pronto, foi esta que saiu (e sendo para alguém que não sabe regex for sure (que é o caso dele... e meu também), esta era provavelmente a mais simples). Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum! Link to comment Share on other sites More sharing options...
Guest id194 Posted April 25, 2008 at 01:07 AM Report Share #181154 Posted April 25, 2008 at 01:07 AM regex neste caso não tem nada que saber: /<(.+)>/ Pronto, já tá... Para o que é, e como já disse, assim à primeira vista, parece-me o indicado e mais simples. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now