小例子:
perl -e '$s="aaabbcc";$c=()=$s=~/a/g;print"$c\n$s\n"'
(m//g) 输出
3
aaabbcc
而perl -e '$s="aaabbcc";$c=()=$s=~s/a/x/g;print"$c\n$s\n"'
(s///g) 输出
1
xxxbbcc
我想同时做这两件事而不必先匹配:替换并知道替换的数量。显然 as///g 不会返回标量上下文中的替换次数——不像 m//g 对匹配项所做的那样。这可能吗?如果是,如何?
perlre、perlvar 和 perlop 没有提供任何帮助(或者我只是找不到它)。