Hallo!
Ich habe eine Zeichenkette, die einige male den Backslash enthält.
Wie kann ich feststellen, wie oft der enthalten ist?
Ich kann zwar einen reguläen Ausruck in ein Array interpolieren und dann dessen Länge nehmen, aber ich möchte an dieser Stelle lieber unleserlichen Code der mir direkten Zugriff auf die Anzahl der Matches erlaubt.
Hier mal Beispielcode:
my $s = q~1\A\563\M\1\Y\Y\Y\A\N\N\N\N\(A)[N]\N\N\N\N\S3/P2\N~;
print $s =~ m/(\\)/g; # gibt 19mal \ aus
my @erg = $s =~ m/(\\)/g;
print "\nerg: " . scalar(@erg); # gibt erg: 19 aus
Grüße, pktm