Foros del Web » Programando para Internet » PHP »

Reemplazar caracter ( por ) y ) por (

Estas en el tema de Reemplazar caracter ( por ) y ) por ( en el foro de PHP en Foros del Web. Hola gente, me encontre con el siguiente problema Tengo por ejemplo esta cadena... Código PHP: $string_return  =  ')CASA(' ;  Y quiero obtener esto... Código PHP: ...
  #1 (permalink)  
Antiguo 30/03/2012, 16:25
 
Fecha de Ingreso: junio-2008
Mensajes: 119
Antigüedad: 16 años, 6 meses
Puntos: 1
Pregunta Reemplazar caracter ( por ) y ) por (

Hola gente, me encontre con el siguiente problema

Tengo por ejemplo esta cadena...
Código PHP:
$string_return ')CASA('
Y quiero obtener esto...
Código PHP:
(CASA
para eso probé con dos alternativas...

Alternativa 1:
Código PHP:
$string_return str_replace('('')'$string_return);
$string_return str_replace(')''('$string_return); 
Alternativa 2:
Código PHP:
    for($i=0$i<strlen($string_return); $i++){
        if(
$string_return[$i] == '('){
           
$string_return[$i] = ')'
        }
        if(
$string_return[$i] == ')'){
           
$string_return[$i] = '('
        }        
    } 
y obtengo el mismo resultado
Código PHP:
(CASA
Alguna idea?

Muchas Gracias
  #2 (permalink)  
Antiguo 30/03/2012, 17:19
Avatar de hackjose  
Fecha de Ingreso: abril-2010
Ubicación: Edo Mexico
Mensajes: 1.178
Antigüedad: 14 años, 8 meses
Puntos: 131
Respuesta: Reemplazar caracter ( por ) y ) por (

Código PHP:
Ver original
  1. $cadena = ")casa(";
  2. $nueva_cadena = strtr($cadena,")(","()");
  3. echo $nueva_cadena;
  4. //tal vez es asi no lo probe
  #3 (permalink)  
Antiguo 31/03/2012, 02:14
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: Reemplazar caracter ( por ) y ) por (

Con str_replace y un caracter "temporal" sería más fácil, pero necesitas asegurarte de que éste no aparezca en la cadena; conviertes todos los cierres de paréntesis al temporal, después las aperturas a cierres y, finalmente, los temporales a aperturas.... muy claro, verdad?

Código PHP:
Ver original
  1. // Usando caracter nulo:
  2. $temp = "\x00";
  3. $busca = array(')', '(', $temp);
  4. $reemplaza = array($temp, ')', '(');
  5.  
  6. $cadena = ')CASA(';
  7.  
  8. echo str_replace($busca, $reemplaza, $cadena); // (CASA)
__________________
- León, Guanajuato
- GV-Foto
  #4 (permalink)  
Antiguo 02/04/2012, 14:27
 
Fecha de Ingreso: junio-2008
Mensajes: 119
Antigüedad: 16 años, 6 meses
Puntos: 1
De acuerdo Respuesta: Reemplazar caracter ( por ) y ) por (

Gracias @hackjose me ha funcionado a la perfeccion...

Etiquetas: chareacter, parentesis, parenthesis, replace
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 15:57.