• ベストアンサー

変数内の文字の数

変数内に指定された単語が含まれている数を変数に 代入する方法ってありますか? 例) 変数$aには あなたの恋愛傾向を知ることから 無料・恋愛診断で深層心理を診断。 が入っている。 この中から「無料」又は「むりょう」を見つける。 結果は$bに代入する。 $b = 1 となる。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

use encoding 'cp932'; #Shift_JIS $a="あなたの恋愛傾向を知ることから 無料・恋愛診断で深層心理を診断。"; $b=($a=~s/無料|むりょう/$&/g); print $b;

その他の回答 (2)

回答No.3

my $b = 0; $b++ while ($a =~ /無料|むりょう/g); プログラムの先頭の方で use encoding でエンコーディングを適切に設定しておかないとちゃんと動かないかも知れません。

  • jikenjp
  • ベストアンサー率38% (5/13)
回答No.2

>fouhttp さま、>BLUEPIXYさまへ、こんにちは。はじめまして。 私も、実験してみたのですが、なんで動かないのかと思ったら、下記のように、すると動くことわかりました。(自分のせいです。"Fedore Core 3" のため) use encoding 'utf8'; #UTF-8