Windows7でActiveStatePerl5.14.2を使用するか、CentOS6.3LinuxでPerl5.10.1を使用するUTF8テキストからすべての小文字の単語を抽出しようとしています。
#!/usr/bin/perl -w
use strict;
use warnings;
while(<>) {
# print "$1\n" while /\b([a-z]{3,})\b/g;
print "$1\n" while /\b([\x{0430}-\x{044F}]{3,})\b/g;
}
これは英語の単語ではうまく機能しますが(上記のコメント行を参照)、キリル文字では失敗します(Unicode範囲チャートを参照してください)。スクリプトでは何も出力されません。
誰か知っていますか、何が問題なのですか?
便宜上、ロシア語のサンプルテキストを以下に貼り付けています。
ВсесмешалосьвдомеОблонских。Женаузнала、чтомужбылвсвязисбывшеювихдомефранцуженкою-гувернанткой、иобъявилам Положениеэтопродолжалосьужетретийденьимучительночувствовалосьисамимисупругами、ивс