Schrift
[thread]11807[/thread]

split: \W ohne deutsche Umlaute



<< >> 4 Einträge, 1 Seite
pktm
 2008-05-15 00:02
#109708 #109708
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Hallo!

Wie mache ich das, dass bei einem split-Aufruf \W nicht bei deutschen Umlauten aufspaltet? *Muss* ich die Zeichenklasse selbst definieren?

Gabs da nicht irgedwas mit locale oder so?

Grüße, pktm
http://www.intergastro-service.de (mein erstes CMS :) )
betterworld
 2008-05-15 00:23
#109711 #109711
User since
2003-08-21
2613 Artikel
ModeratorIn

user image
pktm+2008-05-14 22:02:08--
Gabs da nicht irgedwas mit locale oder so?

Ja.
Linuxer
 2008-05-15 00:38
#109712 #109712
User since
2006-01-27
3881 Artikel
HausmeisterIn

user image
Umgebungsvariable LANG setzen und exportieren;
im Skript "use locale;" benutzen.

perldoc perllocale
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!
moritz
 2008-05-15 01:57
#109718 #109718
User since
2007-05-11
923 Artikel
HausmeisterIn
[Homepage]
user image
Oder Textstrings benutzen und die Unicode-Eigenschaft IsAlnum abfragen:

Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
use strict;
use warnings;
use utf8;
binmode STDOUT, ':utf8';

my $test = "abäc||asÖdß! ü";
my @a = split m/\P{IsAlnum}+/, $test;
print "@a\n";
__END__
abäc asÖdß ü


Locales haben einige Probleme, z.B. sind sie auf einigen Linuxinstallationen ein wenig kaputt, und es gibt ein paar potentielle Sicherheitsprobleme.
<< >> 4 Einträge, 1 Seite



View all threads created 2008-05-15 00:02.