identificar caracteres raros

48 views
Skip to first unread message

diego

unread,
Nov 22, 2012, 6:12:37 PM11/22/12
to php...@googlegroups.com
Hola a todos.
tengo una base de datos mysql llena de basura.
caracteres raros que quedaron luego de un cambio de encoding.

cuestion que quiero normalizarla y pense en buscar los registros que tengan datos raros y limpiarlos.

los caracteres raros son siempre asi
€™íƒâ€ í¢â‚¬â„¢íƒÆ’í¢â‚¬Â íƒÂ¢í¢

como puedo identificarlos? con alguna expresion regular o algo asi?
con SQL agoté mis posibilidades y creo que PHP me va a ayudar. espero

saludos!

diego

Jonathan Muszkat

unread,
Nov 22, 2012, 6:15:22 PM11/22/12
to php...@googlegroups.com

Hacele un utf8_decode

Abrazo

--
Has recibido este mensaje porque estás suscrito al grupo "Grupo PHP Argentina" de Grupos de Google.
Para publicar una entrada en este grupo, envía un correo electrónico a php...@googlegroups.com.
Para anular tu suscripción a este grupo, envía un correo electrónico a php-arg+u...@googlegroups.com
Para tener acceso a más opciones, visita el grupo en http://groups.google.com/group/php-arg?hl=es.

diego

unread,
Nov 22, 2012, 6:17:37 PM11/22/12
to php...@googlegroups.com
peor... me genera algo asi í?Ć?í?¢í?¢í˘â??ÂŹí?ÂĄí?â??í?ÂŹí?Ć?í?¢í?¢


2012/11/22 Jonathan Muszkat <mus...@gmail.com>

Camello Ar

unread,
Nov 22, 2012, 6:18:52 PM11/22/12
to php...@googlegroups.com

Y utf8_encode

diego

unread,
Nov 22, 2012, 6:23:00 PM11/22/12
to php...@googlegroups.com
tampoco!

cadena original:
Æ’í†â€™íƒâ€ í¢â‚¬â„¢íƒÆ’í¢â‚¬Â íƒÂ¢í¢

utf8_decode
�?�?�??�?�? ���?��?��?�?���?�� �?¢��

utf8_encode
Æ’í†â€™íƒâ€ í¢â‚¬â„¢íƒÆ’í¢â‚¬Â íƒÂ¢í¢


2012/11/22 Camello Ar <camel...@gmail.com>

Joel Alejandro Villarreal Bertoldi

unread,
Nov 22, 2012, 6:26:15 PM11/22/12
to php...@googlegroups.com
Me suena a que está destruido por varias recodificaciones inválidas. Un texto no se destruye así por un cambio de encoding. Se me ocurre que podés intentar anidar la llamada a la función n veces...?

D.G. Joel A. Villarreal Bertoldi
 moobin  web applications & design
+54 (9) 351 · 6 · 710 · 728

Maximiliano Churichi

unread,
Nov 22, 2012, 6:28:13 PM11/22/12
to php...@googlegroups.com
Si lo que queres es eliminar los caracteres no-ASCII...

$garbage = "€™íƒâ€ í¢â‚¬â„¢íƒÆ’í¢â‚¬Â íƒÂ¢í¢";
$clean = preg_replace('/[^(\x20-\x7F)]*/','', $garbage);
echo $clean;

Saludos

Maximiliano Churichi
<mchu...@gmail.com>

diego

unread,
Nov 22, 2012, 6:39:18 PM11/22/12
to php...@googlegroups.com
Buenisimo Maximiliano,
curar los registros ya es imposible por lo que dice Joel asi que voy a probar si con esa funcion lo soluciono


2012/11/22 Maximiliano Churichi <mchu...@gmail.com>

diego

unread,
Nov 22, 2012, 10:33:11 PM11/22/12
to php...@googlegroups.com
Maximiliano,
puede ser que ese codigo encuentra el primer caracter no-ascii y borra desde ahi hasta el final
sin importar si borra algun caracter ascii ?


2012/11/22 diego <dieg...@gmail.com>

diego

unread,
Nov 23, 2012, 8:09:18 AM11/23/12
to php...@googlegroups.com
ahh y me borra los acentos, ñ, etc. claro. no son ascii


2012/11/23 diego <dieg...@gmail.com>
Reply all
Reply to author
Forward
0 new messages