-1

文字列に 10 と 01 がいくつ含まれているかを調べる必要があります。例: 10101 の場合、2 つの 10 があり、2 つの 01 があるように、reg ex を使用して検索しますか? 10 は 2 回一致し、01 は 2 回一致します。

4

2 に答える 2

2

goatse 演算子 を使用し=()=ます。

$string = '10101';

$a =()= $string =~ m/10/g;
$b =()= $string =~ m/01/g;

print "a: $a\nb: $b\n";

出力は次のとおりです。

a: 2
b: 2
于 2013-04-24T08:06:32.190 に答える
1

これが私の解決策です:

use strict;
use warnings;

my $test = "101010";

my @matches_10 = $test =~ m!10!g;
my @matches_01 = $test =~ m!01!g;
print "matches 10: ", scalar(@matches_10), "\n"; #<-- prints: 3
print "matches 01: ", scalar(@matches_01), "\n"; #<-- prints: 2
于 2013-04-24T08:09:07.637 に答える