Thread Zeichensatzproblem mit Š (15 answers)
Opened by bianca at 2019-06-07 19:07

bianca
 2019-06-08 19:38
#190110 #190110
User since
2009-09-13
6975 Artikel
BenutzerIn

user image
Danke an haj und rosti aber ich weiß, dass es so funktioniert wie von euch gezeigt aber in meinem Script geht es nicht. Dort kommen die beiden Zeichen laut CPAN:Data::Dumper an, wie ich gezeigt habe aber ein und der selbe Regex reagiert nur auf das kleine š richtig. Warum nicht auch auf das große Š?

Hiermit ist das reproduzierbar:
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#!/usr/bin/perl
use strict;
use warnings;
use Data::Dumper;
local $Data::Dumper::Purity;$Data::Dumper::Purity = 1;
local $Data::Dumper::Useqq;$Data::Dumper::Useqq = 1;
local $Data::Dumper::Deparse = 1;$Data::Dumper::Deparse = 1;
local $Data::Dumper::Sortkeys;$Data::Dumper::Sortkeys = sub {
    my ($hash) = @_;
    return [(sort {lc $a cmp lc $b} keys %$hash)]; 
};
use 5.010;

my $name = "Zala Kralj & Ga\250per \246antl"; # no, that's not actually *my* name.
my @liste;
for (my $p = 0; $p < length($name); $p ++) {
    if (substr($name,$p,1) =~ /[^0-9a-z @\.,_#+±%()\[\]\$\-~¿!'&§°¨ßäöüÅÄÁÀÃÂÖÜÚÉÈÑþœçáàåãâëéèêòóúùîïí©øØô½ñšŠý®¬µ¯]/i) {
        push @liste,$p+1;
    }
}
say Dumper(\@liste);


Das Script wurde in Notepad++ in der Kodierung "ANSI" gespeichert (daher meine Angabe "ANSI-Script") und soll das jeweilige Zeichen an jeder Position untersuchen und nicht zugelassene einzeln listen. Ergebnis ist 21, das ist das große Š. Warum bleibt das hängen und das kleine š nicht?
10 print "Hallo"
20 goto 10

View full thread Zeichensatzproblem mit Š