Thomas Krichel wrote:
Ere Maijala writes
On 7.10.2010 15:17, Thomas Krichel wrote:
...
use Encode::Guess qw/latin-1/;
$decoded=decode("Guess", $dodgy_input);
$decoded then should be a utf-8 string with utf8 flag on.
Would that work for a predominantly proper utf-8 input with some
"mistakes" thrown in?
It will try to guess between UTF-8 and ISO-8859-1. This can be done
because UTF-8 has many invalid byte sequences. But say if you
wanted to guess between ISO-8859-1 and ISO-8859-2, you'd be out of
luck.
Not necessarily.
There are tools such as http://www.let.rug.nl/~vannoord/TextCat/ which
provide very reliable guessing of languages. A minor adaptation might be
needed to make it guess twice, once for each of ISO-8859-1 and
ISO-8859-2 and then you take the highest ranked.
cheers
stuart
--
Stuart Yeates
http://www.nzetc.org/ New Zealand Electronic Text Centre
http://researcharchive.vuw.ac.nz/ Institutional Repository