dポイントプレゼントキャンペーン実施中!

perlを使って英文だけを取り出したい。(UTF-8の場合)

下記perlは、UTF-8で記述されています。
この場合、$str1のように、英文が混じっています。
その中から、英語だけの文字を取り出すことは、できないでしょうか?
もし、簡単なサブルーチンなどご存知でしたら教えてください。
宜しくお願い致します。


$str1 = "さま z a マ な mo じ が ハイ っ ています。";
$str2 = &omit($str1);

sub omit{

}


print "$str2";


結果出力
---------
z a mo

A 回答 (2件)

sub omit{


my $str = shift ;
$str =~ tr/a-zA-Z //cd;#英字以外は削除
$str =~ s/\s+/ /g;#スペースの縮約
return $str;
}
    • good
    • 0
この回答へのお礼

ありがとうございます。
スペースの短縮まで教えてくださり、ありがとうございました!!

お礼日時:2006/05/27 17:59

> 英語だけの文字



ascii 文字すべてなのか、その中でもアルファベットだけなのか、もしくは全角英(数)文字も含むのか、どうなのでしょう。
    • good
    • 0
この回答へのお礼

回答いただきありがとうございます。
言葉足らずで申し訳ありません。
#2さまの回答で解決いたしました。
色々改良して調整してみようと思っていますので、
もし、分からないときは、質問させていただきますので、
その折は、宜しくお願い致します。

お礼日時:2006/05/27 18:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!