Ver Mensaje Individual
  #3 (permalink)  
Antiguo 20/10/2013, 11:12
sQs
 
Fecha de Ingreso: abril-2013
Ubicación: Sinaloa
Mensajes: 45
Antigüedad: 11 años, 1 mes
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.