Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/09/2014, 23:10
Avatar de maxhurbano
maxhurbano
 
Fecha de Ingreso: mayo-2009
Mensajes: 7
Antigüedad: 15 años, 6 meses
Puntos: 1
Extrayendo fragmentos de un texto

Hola a todos!

Resulta que pretendo extraer 3 fragmentos de un texto de tamaño variable (entre 400 y 2500 caracteres), para hacer una especie de resumen de cada Post/artículo en la portada/secciones, y que sean de el inicio (0), de 180 y de 320 caracteres desde donde partan los fragmentos.
Ya logré extraerlos de esa manera, incluyendo el '...' al final de cada fragmento, también el que no me corte la palabra final de cada fragmento (que quede completa), pero me falta que realice búsqueda de espacio al inicio de fragmentos 2 y 3, ya que luego de cada '...' inicia en 180 y 320 donde por lo general (bueno, azar), lo hace con media palabra.

Se que tengo todo lo necesario en el código, sólo falta acomodar para que haga el strrpos() también al inicio de los fragmentos 2 y 3. Quiero decir que ya no se cómo agregar esa función para que me detecte el espacio al inicio...

Dejo el código que estoy usando, y abajo un ejemplo de texto.
Mi código es éste:
Código PHP:
function max_cut($text){
$etc '... ';
$max1=130;
$max2=100;
$max3=85;
$text1 substr($text,0,strrpos(substr($text,0,$max1)," ")) . $etc;
$text2 substr($text,180,strrpos(substr($text,0,$max2)," ")) . $etc;
$text3 substr($text,320,strrpos(substr($text,0,$max3)," ")) . $etc;
$text $text1 $text2 $text3;
return 
$text;

Lo que, al publicar me devuelve en la portada...
(Como ejemplo usaré el mismo texto de arriba...)
Cita:
Hola a todos! Resulta que pretendo extraer 3 fragmentos de texto de tamaño variable (entre 400 y 2500 caracteres), para hacer... ortada/secciones, y que sean de el inicio (0), de 180 y de 320 caracteres desde donde partan los ... era, incluyendo el '...', también el que no me corte la palabra final de cada fragm...
Como verán, el 2o fragmento inicia con: ortada/secciones en lugar de: portada/secciones.
El 3er fragmento inicia con: era, incluyendo, en lugar de: manera, incluyendo, como debiera ser...
Por cierto, también me cortó la última palabra del 3er fragmento (fragm...); habrá que revisar...


Ojalá puedan ayudarme.


Saludos.

Última edición por maxhurbano; 28/09/2014 a las 23:37 Razón: Ortigrafía