Foros del Web » Programando para Internet » PHP »

Comodines en strpos

Estas en el tema de Comodines en strpos en el foro de PHP en Foros del Web. Hola amigos del foro, estoy buscando algunos comodines para la funcion strpos parecidos a los que se usan en preg_replace o preg_match pero no puedo ...
  #1 (permalink)  
Antiguo 19/10/2013, 22:01
sQs
 
Fecha de Ingreso: abril-2013
Ubicación: Sinaloa
Mensajes: 45
Antigüedad: 11 años, 8 meses
Puntos: 0
Comodines en strpos

Hola amigos del foro, estoy buscando algunos comodines para la funcion strpos parecidos a los que se usan en preg_replace o preg_match pero no puedo dar con ellos, de hecho no se si existen, tengo el siguiente ejemplo para que se den una idea.
Código PHP:
Ver original
  1. if (strpos("El conejo\t\t\tverde", "conejo verde") === false)
  2.     echo "Texto NO encontrado";
  3. else
  4.     echo "Texto SI encontrado";
En este ejemplo el resultado seria "Texto NO encontrado", ahora es aqui donde quisiera saber si existe un comodin, en este caso para detectar cualquier espacio en blanco o tabulacion, que quedara algo asi:
Código PHP:
Ver original
  1. if (strpos("El conejo\t\t\tverde", "conejo/*aqui el comodin para que tome cualquier espacio o tabulacion*/verde") === false)
  2.     echo "Texto NO encontrado";
  3. else
  4.     echo "Texto SI encontrado";


Alguien sabe algo ?
De antemano gracias por su ayuda.
  #2 (permalink)  
Antiguo 20/10/2013, 00:21
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 16 años, 4 meses
Puntos: 2237
Respuesta: Comodines en strpos

strpos() y funciones similares sólo comparan cadenas, lo que realmente necesitas es expresiones regulares con las funciones preg_***().

Si no sabes usarlas, pásate por aquí: http://www.forosdelweb.com/f18/aport...s-pcre-646110/
__________________
- León, Guanajuato
- GV-Foto
  #3 (permalink)  
Antiguo 20/10/2013, 11:12
sQs
 
Fecha de Ingreso: abril-2013
Ubicación: Sinaloa
Mensajes: 45
Antigüedad: 11 años, 8 meses
Puntos: 0
Respuesta: Comodines en strpos

Cita:
Iniciado por Triby Ver Mensaje
strpos() y funciones similares sólo comparan cadenas, lo que realmente necesitas es expresiones regulares con las funciones preg_***().

Si no sabes usarlas, pásate por aquí: http://www.forosdelweb.com/f18/aport...s-pcre-646110/
Gracias por su respuesta, en realidad si he usado preg_*** lo que sucede es que en este caso tengo una pequeña funcion que lee el contenido de un archivo y en el quiero buscar por un bloque de codigo de 3 lineas y luego sustituirlo por otro, con srtpost es sencillo localizar un bloque de texto, el problema se presenta en este caso cuando existe un espacio mas o un tabulador mas es cuando ya no lozaliza el bloque.

Si puedo preguntar, sabe de alguna pequeña funcion que me pueda ayudar con eso?
Tengo por ejemplo un archivo.js con el siguiente contenido:
Código Javascript:
Ver original
  1. function updatePaymentMethodsDisplay()
  2. {
  3.     var checked = '';
  4.     if ($('#cgv:checked').length !== 0)
  5.         checked = 1;
  6.     else
  7.         checked = 0;
  8.     $('#opc_payment_methods-overlay').fadeIn('slow', function(){
  9.         $.ajax({
  10.             type: 'POST',
  11.             headers: { "cache-control": "no-cache" },
  12.             url: orderOpcUrl + '?rand=' + new Date().getTime(),
  13.             async: true,
  14.             cache: false,
  15.             dataType : "json",
  16.             data: 'ajax=true&method=updateTOSStatusAndGetPayments&checked=' + checked + '&token=' + static_token,
  17.             success: function(json)
  18.             {
  19.                 updatePaymentMethods(json);
  20.             }
  21.         });
  22.         $(this).fadeOut('slow');       
  23.     });
  24. }
En el cual me interesa cambiar:
Código Javascript:
Ver original
  1. var checked = '';
  2.     if ($('#cgv:checked').length !== 0)
  3.         checked = 1;
  4.     else
  5.         checked = 0;
Por:
Código Javascript:
Ver original
  1. var checked = true;
  2.     if ($('#cgv:checked').length !== false)
  3.         otra = 'test';
  4.     else
  5.         otra = 'test 2';

Esto es solo por dar un ejemplo, sabe se alguna buena funcion para reemplazar bloques de texto de mas de una linea ?
Con srtpost lo puedo hacer perfectamente, el detalle esta en que tengo que darle los espacios o tabuladores exactamente tal como esten en el archivo original.

Etiquetas: comodines, strpos
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 07:15.