Utf8 im CGI und split(split(/\W+/,$str)

Hallo,

ich habe da ein Problem mit Utf8 und split:
Ich habe aus $str die Eingabe(CGI) in Utf8 und möchte mit
split die einzelnen Wörter richtig ausgeben.

Habe auch versucht in eine Datei zu schreiben,wieder einlesen
und dann split zu machen.

Wie kann ich aber aus dem CGI(param)Utf8 richtig split machen?

Mein Versuche/Perl dazu:

use utf8;
use CGI;
#use encoding ‚utf8‘;
print „Content-type: text/html; charset=utf-8\n\n“,
„\n“;

$query=new CGI;

$str=$query->param(‚str‘);

utf8::upgrade($str);
utf8::encode($str);

print "Teil 1
";
print „Gesamt: $str
\n“;
print join ‚***‘, split(/\W+/ ,$str), ’
';

open FILE, „>utf.txt“;
print FILE $str;
close FILE;

use open ‚:utf8‘;

open FILE, „utf.txt“;
$str=;
close FILE;

print „Teil 2
„;
#$flag = utf8::is_utf8($str);
print join ‚***‘, split(/\W+/ ,$str), ’
';
print "
file: str=$str
lc(str)=“, lc($str), "
uc(str)=“,
uc($str),"
\n";

Hallo,

ich habe da ein Problem mit Utf8 und split:
Ich habe aus $str die Eingabe(CGI) in Utf8 und möchte mit
split die einzelnen Wörter richtig ausgeben.

Wie lautet dein Problem, und was funktioniert an deiner bisherigen Lösung nicht?
Hast du es schon mal mit

use locale

probiert, und in %ENV die für dich passende Locals gesetzt?

ich glaube übrigens nicht, dass der Umweg über eine Datei viel nützt…

Grüße,
Moritz