I am trying to clean up a file (file.txt) which was part of a database
and it comes with a lot of strange characters mixed up with the text.
The output file is file2.txt
I would like to read the file into a variable called $text, create a
regular expression that cleans it and print again the output file
eliminating non readable chars.
$text is the variable that contains the text to be cleaned.
This is the content of the input file called file.txt:
^E ^E ^E ÿÝ.Anodizado<br>^@ Ultima
actualización: 06-Mar-2004 [EMAIL PROTECTED]://www.kr2-egb.com.ar/
anodizado.htm^@
[EMAIL PROTECTED] es el anodizado?<br>[EMAIL PROTECTED] escuchamos este
termino, lo
primero que se nos cruza por la cabeza es el coloreado del aluminio,
pues algo de eso tiene, pero en si el proceso de anodizado es una
forma de proteger el aluminio contra de los agentes atmosféricos.
Luego del extruído o decapado, este material entra en contacto con el
aire y forma por si solo una delgada película de oxido con un espesor
mas o menos regular de 0,01 micrones denominada oxido de aluminio,
esta tiene algunas mínimas propiedades [EMAIL PROTECTED], el proceso
de anodizado consiste en obtener de manera artificial películas de
oxido de mucho mas espesor y con mejores características de protección
que las capas naturales, estas se obtienen mediante procesos químicos
y electrolíticos. Artificialmente se pueden obtener películas en las
que el espesor es de 25/30 micrones en el tratamiento de protección o
decoración y de casi 100 micrones con el procedimiento de
endurecimiento superficial (Anodizado Duro).
The script I use to read the file is:
#!/usr/bin/perl
open(FILE,"<file.txt") or die;
@text=<FILE>;
close(FILE);
$text= join "",@text;
#$text=~s/![a-zA-Z][0-9]//g; #not used so far
print $text;
open(FILE,">file2.txt") or die;
print FILE $text;
close(FILE);
When I print the $text variable to STDOUT, the output replaces (1)
chars as for example ñ, á, é, í, ó, ú by a question mark as follows:
??.Anodizado<br> Ultima actualizaci?n: 06-
Mar-2004 http://www.kr2-egb.com.ar/anodizado.htm
?Que es el anodizado?<br>Cuando escuchamos este termino, lo primero
que se nos cruza por la cabeza es el coloreado del aluminio, pues algo
de eso tiene, pero en si el proceso de anodizado es una forma de
proteger el aluminio contra de los agentes atmosf?ricos. Luego del
extru?do o decapado, este material entra en contacto con el aire y
forma por si solo una delgada pel?cula de oxido con un espesor mas o
menos regular de 0,01 micrones denominada oxido de aluminio, esta
tiene algunas m?nimas propiedades protectoras.Bien, el proceso de
anodizado consiste en obtener de manera artificial pel?culas de oxido
de mucho mas espesor y con mejores caracter?sticas de protecci?n que
las capas naturales, estas se obtienen mediante procesos qu?micos y
electrol?ticos. Artificialmente se pueden obtener pel?culas en las que
el espesor es de 25/30 micrones en el tratamiento de protecci?n o
decoraci?n y de casi 100 micrones con el procedimiento de
endurecimiento superficial (Anodizado Duro).
And it also eliminates (2) chars as ^E ^E
^E ÿÝ ^@
I really like to eliminate those chars (2), but not the chars (1): ñ,
á, é, í, ó, ú
Anyway, after reading the contents in the file2.txt, no change in the
is produced with respect to the contents of file.txt
file.txt and file2.txt are identical.
I would like to clean the file of the type (1) chars but keep the type
(2) chars.
What's the way to do it?
_______________________________________________
ActivePerl mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs