Hoje testei e vi que o meu exemplo estava bugado.
Corrigi.

Busquei uma forma de extrair o trecho do texto sem cortar palavras ao
meio.ex ."..reino muito distante..." em vez de "...ino muito
distant..."

http://pastebin.com/47hn3qjC

Abs
Edinho Almeida
11 8018-8019



2010/11/26 Eric Saboia <[email protected]>:
> De noite a gente sempre acaba se enrolando com besteira.. ainda mais quando
> já ta a um tempo tentando né?
>
> Mas tranquilo, boa sorte ;)
>
> 2010/11/26 Rafael V. de Oliveira <[email protected]>
>>
>> Eric, foi mesmo o teu código que ajudou-me imenso!!!
>> Só tive que fazer algumas modificações, simples, mas tive que fazer.
>> $range = 33;
>> $posInit = strpos( $row->text, $search );
>> $str = $row->text;
>> if ( $posInit > $range )
>> $str = '...'.substr( $row->text, $posInit - $range );
>> Muitas vezes o texto procurado pode estar no começo da string, então tenho
>> que colocar dentro do if, senão ele acaba por fazer um substr negativo
>> ($posInit - $range).
>> E também cortei o terceiro parametro do substr uma vez que na view eu já
>> tenho um word_limiter.
>> Mesmo assim, depois envio-te um vinho do Porto.
>> O pastelzinho eu tenho que dar um pulo em Lisboa para comprar. Com o frio
>> que está deve demorar um bocado.
>> Ponho no anexo do e-mail, pode ser?
>> Abraços e desculpa, quando cheguei em casa percebi que era um problema
>> mais da peça entre o monitor e a cadeira do que qualquer outra coisa.
>> Preguiça de pensar, mil perdões.
>> Rafael.
>> Em 2010/11/25, às 20:51, Eric Saboia escreveu:
>>
>> http://pastebin.com/zjVGuVqj
>>
>> Abraços,
>>
>> 2010/11/25 Rafael V. de Oliveira <[email protected]>
>>>
>>> Caros senhores, senhoras e simpatizantes.
>>> Gostaria de pedir uma ajuda vossa.
>>> Usando o seguinte exemplo:
>>> Na minha base de dados (MySQL 4.0) tenho a seguinte estrutura
>>> id (int) texto (text)
>>>   1 "Era uma vez, num reino muito distante, mais conhecido como
>>> Embu-guaçu, existia um jovem aspirante a vendedor de caquis, que gritava
>>> sempre: 'Cabô caqui' "
>>> Muito bem, eu tenho um sistema que faz uma busca da seguinte forma:
>>> $this->db->select('texto');
>>> $this->db->like('texto', 'caquis');
>>> return $this->db->get('minha_tabela');
>>> Neste caso, eu vou achar, pois dentro do campo 'texto' existe o termo
>>> 'caquis'. E vou exibir este registro numa view, porém não exibo o texto
>>> completo, apenas uma parte dele, assim ó:
>>> echo word_limiter( highlight_phrase($texto, $procura, '<span
>>> class="encontrado">', '</span>'), 10);
>>> Esta instrução corta o texto em 10 palavras e o termo procurado
>>> ($procura) fica entre tags <span> com uma class encontrado.
>>> O retorno é este:
>>> Era uma vez, num reino muito distante, mais conhecido como....
>>> O que eu queria era uma coisa assim:
>>> ... um jovem aspirante a vendedor de <span
>>> class="encontrado">caquis</span>, que gritava sempre:....
>>> Gostaria de uma ajuda em como retirar um extrato do texto encontrado, mas
>>> na posição em que o termo ('caquis') se encontra.
>>>
>>> Quem precisar de um incentivo, arranjo um vinho do Porto e um pastel de
>>> Belém (de Belém mesmo e não do Habibs) pra quem ajudar.
>>> Ou para os Calcutás da vida, eu dou meu sincero muitíssimo obrigado.
>>> PS: Se não fui claro, posso tentar ser mais específico ^_^
>>> Abraços,
>>> Rafael V. de Oliveira
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> [email protected]
>>> http://www.codeigniter.com.br
>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>>
>>> ---------------------------
>>> Oportunidade de negócio
>>> http://www.franquiasargohost.net
>>> ---------------------------
>>>
>>
>>
>>
>> --
>> Eric Saboia - eric.saboia.org
>>
>> Beautiful is better than ugly,
>> Explicit is better than implicit,
>> Simple is better than complex,
>> Complex is better than complicated.
>>
>> The Zen of Python, by Tim Peters
>>
>> _______________________________________________
>> [email protected]
>> http://www.codeigniter.com.br
>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>
>> ---------------------------
>> Oportunidade de negócio
>> http://www.franquiasargohost.net
>> ---------------------------
>>
>>
>> _______________________________________________
>> [email protected]
>> http://www.codeigniter.com.br
>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>
>> ---------------------------
>> Oportunidade de negócio
>> http://www.franquiasargohost.net
>> ---------------------------
>>
>
>
>
> --
> Eric Saboia - eric.saboia.org
>
> Beautiful is better than ugly,
> Explicit is better than implicit,
> Simple is better than complex,
> Complex is better than complicated.
>
> The Zen of Python, by Tim Peters
>
>
> _______________________________________________
> [email protected]
> http://www.codeigniter.com.br
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
> ---------------------------
> Oportunidade de negócio
> http://www.franquiasargohost.net
> ---------------------------
>
>

_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------

Responder a