regex - 计算 Perl 中字符串中非空白字符的数量

我想弄清楚如何计算字符串中的任何和所有非空白字符,以便在下面的示例中我会得到 4 的输出。

my $str = 'A b C $'; 

my $cnt =~ /\S/g;  

print "Char Count: $cnt\n";

这Is there a Perl shortcut to count the number of matches in a string?没有回答我的问题。

perl -e 'my $str = "A b C"; my $cnt = () = $str =~ /\./gi;  print "Chs: $cnt\n";'
Chs: 0

有人一直想说这个问题是这个问题的重复:Is there a Perl shortcut to count the number of matches in a string?

但是,另一个问题涉及如何匹配特定字符,在他们的情况下我相信它是一个点。我查看了许多其他试图匹配特定字符的示例,但无法让它们匹配除空格以外的所有字符。

这没有回答我的问题。

$string = "ThisXlineXhasXsomeXx'sXinXit";
$count = ($string =~ tr/X//);
print "There are $count X characters in the string";

本题:What do \S, \W, \D stand for in regex?仅仅定义了各种 Perl 通配符运算符——其中一个(\S 运算符)我试图在我的原始问题中使用但无济于事。然而,它并未演示如何实际使用这些运算符之一来获取字符串中所有非空白字符的计数。

相关文章:

c - execl参数混淆

modelica - 如何在创建实例之前在模型中重新声明包?

java - 如何使用流将映射值聚合到集合中

c++ - 如何将 Arduino 的模拟输入读数从草图转换为 .WAV

c - 如何打印从 C 中的 scanf 输入整数开始递减的奇数?

javascript - 翻转所有卡片,但想一张一张地翻转

python - 获取包含在列表列表中的字典的值

javascript - 如何将共享一个公共(public)键的两个对象的两个值合并在一起并返回它?

c++ - CMake 找不到生成的 Visual Studio 15 2017 实例,但可以与 V

java - 追加java静态变量