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

たとえば$testの中に
"abc"という文字列がいくつ(何回)含まれているか?
ということを知りたい場合、
どのようにコーディングすればよいのでしょうか?

初歩的な質問で恐縮ですが、どなたかご教示ください。
よろしくお願いします。

A 回答 (2件)

こんな感じで出来ます。



$test = "abcxxxxxxabcxxxxabc";
$num = ($test =~ s/abc/abc/g);

この$numに置換回数が入ります。
実際には同じ文字で置換する為、$test自体は変化しません。
    • good
    • 0
この回答へのお礼

ありがとうございます。
通常のように文字列置換して、
そのステータスをチェックすれば
何度マッチしたか回数が入っている、
という考え方なのですね。
よく理解できました。
ありがとうございます。

お礼日時:2005/11/04 15:35

$test="ababcabcdabcadbc";


$count= @{[$test=~/(abc)/g]};
print $count;
    • good
    • 0
この回答へのお礼

ありがとうございます。
ソースそのものの意味は理解できませんでしたが、
お教えいただいた方法で実現できました。
お礼申し上げます。

お礼日時:2005/11/04 15:36

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