in reply to non-ASCII characters in text->Excel

You'll have to tell us a little more about the problem - best would be a Short, Self-Contained, Correct Example that reproduces the issue, so that we can see the problem for ourselves, including what module(s) you're using, how you're handling the string, how you've verified that the encodings are correct, and so on.

  • Comment on Re: non-ASCII characters in text->Excel

Replies are listed 'Best First'.
Re^2: non-ASCII characters in text->Excel
by chafelix (Novice) on Oct 04, 2025 at 20:13 UTC
    The quick and dirty way to solve this is the following: -Create an excel file, say 'Characters.xlsx' -On the first column put on each row every one of the characters that give you problem -read this file with perl and store each character in a variable -whenever you need in your code to use this, use the variables you have stored when reading this excel file
    use Spreadsheet::ParseXLSX; my $infile='Characters.xlsx'; my @funny_characters=(); my $parser = Spreadsheet::ParseXLSX->new( ); my $workbook = $parser->parse($infile); for my $worksheet ( $workbook->worksheets() ) { my ( $row_min, $row_max ) = $worksheet->row_range(); my $row=0; while($row<=$row_max){ my $W=$worksheet->get_cell( $row,0);#assuming all funny characters on +the first column my $val=''; if( $W){$val=$W->value(); } push @funny_characters,$val; $row++; } } #so at the end, @funny_characters[0] will have the first funny charac +ter, funny_characters[1] the second in your Characters.xlsx file and +so on <\code> If you want to do something with those funny characters, you say <code> if($mytext=~/$funny_characters[0]/){.....}