Foros del Web » Programando para Internet » PHP »

Todas las ocurrencias en una busqueda ?

Estas en el tema de Todas las ocurrencias en una busqueda ? en el foro de PHP en Foros del Web. Ando necesitando una funcion que me devuelva TODAS las posiciones de las ocurrencias de una aguja en un pajar. Algo mas general que strpos() o ...
  #1 (permalink)  
Antiguo 16/08/2009, 05:13
 
Fecha de Ingreso: agosto-2009
Mensajes: 247
Antigüedad: 14 años, 8 meses
Puntos: 10
Pregunta Todas las ocurrencias en una busqueda ?

Ando necesitando una funcion que me devuelva TODAS las posiciones de las ocurrencias de una aguja en un pajar.

Algo mas general que strpos() o stripos()

Con strrpos() puedo obtener la ultima... pero me interesan todas; por otro lado esta substr_count() que me dice cuantas son pero no me da las posiciones.

/* gracias */
  #2 (permalink)  
Antiguo 16/08/2009, 12:59
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Todas las ocurrencias en una busqueda ?

Podrias usar un for para buscar en el string

Código PHP:
Ver original
  1. <?php
  2. $v = "algo va aqui pero no se donde colocarlo, aqui debe ir otra cosa o aqui, puede que aqui vaya";
  3. for($i=0; $i<strlen($v); $i++){
  4.     $p = stripos($v, "aqui", $i);
  5.     if($p!=$p2){
  6.         echo $p."<br />";
  7.     }
  8.     $p2=$p;
  9. }
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 16/08/2009, 13:06
 
Fecha de Ingreso: agosto-2009
Mensajes: 247
Antigüedad: 14 años, 8 meses
Puntos: 10
Respuesta: Todas las ocurrencias en una busqueda ?

gracias ABI.. me sirve para guiarme

PD: fijate que $p2 no la inicializas nunca.....
  #4 (permalink)  
Antiguo 16/08/2009, 13:37
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 11 meses
Puntos: 1517
Respuesta: Todas las ocurrencias en una busqueda ?

Si en el php.ini no tienes declarado el error_reporting de esta forma

error_reporting = E_ALL & ~E_NOTICE

Te va a causar errores ese tipo de codigo. Si declaras esa linea de esa forma en el php.ini, PHP se encarga de interpretar la variable como una variable vacia. Ahora para evitar errores entonces inicia la variable antes del for y declarala
Código php:
Ver original
  1. $p2="";
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:30.