Foros

  • trace ni zorra de php pero str_replace suele tener 3 parametros:

    A) la cadena que contiene el texto.
    B) la cadena a buscar.
    C) la cadena que se pondrá en lugar de la que se busca.

    Así a bote pronto se me ocurre esto:

    En la función debes hacer lo siguiente:
    1) Pasar A y B a grandúsculas (AA y BB)
    2) Buscar el indice del primer caracter de BB en AA (POSSTART) y también el último (POSEND).
    3) Obtener una cadena A1 que contenga los caracteres de A desde el cero a POSSTART.
    4) Obtener una cadena A2 que contenga los caracteres de A desde POSEND hasta la longitud de A.
    5) devolver A1 + C + A2

    yasta wink

    así en seudotolecodigo seria:

    funcion str_replaceNOCASE(string cadena, string ocurrencia, string nueva)
    InicioFuncion

    string cadenaMayus = UpperCase(cadena);
    string ocurrenciaMayus = UpperCase(ocurrencia);

    int inicio = Posicion(ocurrenciaMayus, CadenaMayus);
    int fin = inicio + Length(ocurrencia) – 1;

    string inicioCadena = Left(cadena, inicio);
    string finCadena = Right(cadena, Length(cadena) – fin);

    resultadoFuncion = inicioCadena + nueva + finCadena;

    FinFuncion;

    Bueno no se si me he equivocao happy, espero que no.

  • ahm, se me olvidaba.
    Gracias por mejorar y facilitar el uso del foro wink

    See you.

  • trace no se si tiene lugar aquí postear bugs de una utilidad que esta “en pruebas”, pero de momento te cuelo esto:

    he probado la busqueda y he buscado “saludos” happy, esta muy bien como se vé el resultado, indicando el thread y luego poniendo el post, me he fijado en que salen ordenados por fecha descendente, lo bueno seria que fuera ascendente, del más viejo al más nuevo. Luego he visto que donde ponia “Saludos” no se veia en rojo, entonces he entendido para que querias el str_replace sin case sensitive, ¿me equivoco?

    chao

  • no te equivocas lol

  • joer, ya no hace falta ni que hable veryhappy .. no probs a aquellos que han agradecido las nuevas features happy

  • Es que es la nueva feature en pruebas: se contesta solo si no estas delante del pc lol

  • … oye, si has entendido el rollo que a soltado tole luego me losplicas, vale? X)

  • Viene a ser algo así:

    function str_replaceNOCASE( $cadena, $ocurrencia, $nueva ){

    $cadenaMayus = strtoupper( $cadena );
    $ocurrenciaMayus = strtoupper( $ocurrencia );

    $inicio = strpos( $cadenaMayus, $ocurrenciaMayus );
    $fin = $inicio + strlen( $ocurrencia ) – 1;

    $inicioCadena = substr( $cadena, 0, $inicio );
    $finCadena = substr( $cadena, $inicio + strlen( $ocurrencia ), strlen( $cadena ) – $fin );

    $resultadoFuncion = $inicioCadena.$nueva.$finCadena;

    return $resultadoFuncion;
    }

    , aunque el problema es que sólo sustituye una cadena por llamada.

  • Por cierto, una versión cristiana del tolecódigo sería:

    Si tienes una CadEnA y quieres encontrar una pALabrA para sustituirla por OTRA:
    Pasa CadEnA y pALabrA a mayúsculas (o minúsculas, da lo mismo).
    Busca PALABRA en CADENA, quédate con dónde empieza y dónde acaba.
    Coge todo lo que hay a la derecha de pALabrA en CadEnA, y todo lo que hay a la izquierda.
    Crea una nueva cadena con: lo_que_había_a_la_izquierda_de_paLAbrA_en_CadEnA + OTRA + lo_que_había_a_la_derecha_de_paLAbrA_en_CadEnA.

    lol – esto debe ser aún más confuso.

  • y eso va rapido? :U_

1 2 3 4 5 6 7 8 9 10 11 12 13