在 Emacs 中计算数字

在 Emacs 中计算数字

假设我在 Emacs 中选择了以下长行。如何计算我有多少个数字(或 NaN)?

我尝试过M-x count-words,但得到了错误的数字。上面写着1 line 1135 words and 3565 characters,但实际上有640数字

0.967 1.043 1.313 1.598 1.879 2.151 2.421 2.918 3.209 3.478 3.736 3.975 0.917 1.012 1.317 1.607 1.900 2.173 2.437 2.929 3. 203 3.473 3.714 3.954 1.081 1.297 1.570 1.753 1.964 2.209 2.456 2.699 2.947 3.196 3.566 3.822 4.050 4.268 4.423 0.950 1.080 1.212 1.343 1.617 1.911 2.219 2.487 2.750 3.213 3.489 3.732 3.957 4.180 0.965 1.074 1.176 1.280 1.381 1.636 1.871 2.108 2.357 2.614 3.080 3.374 3.666 3.943 4.205 0.992 1.151 1. 294 1.422 1.527 1.653 1.894 2.094 2.311 2.557 2.820 3.263 3.559 3.849 4.115 4.349 0.895 0.997 1.119 1.215 1.313 1.401 1.649 1.898 2.152 2.411 2.667 3.143 3.446 3.723 3.969 4.207 0.947 1.155 1.369 1.599 1.838 2.094 2.597 2.941 3.265 3.570 3.852 1.120 1.396 1.680 1.970 2.297 2.781 3.075 3.344 3.596 3. 835 1.020 1.181 1.335 1.514 1.675 1.868 2.124 2.401 2.719 2.995 3.255 3.617 3.896 4.131 4.309 4.461 0.893 1.003 1.094 1.202 1.464 1.732 2.022 2.289 2.562 3.030 3.338 3.609 3.852 4.095 1.026 1.219 1.403 1.585 1.759 2.041 2.285 2.535 2.796 3.058 3.486 3.754 4.009 4.210 4.394 0.900 1.005 1.127 1.255 1. 415 1.715 2.015 2.322 2.622 2.924 3.346 3.624 3.842 4.034 4.212 0.926 1.045 1.143 1.392 1.648 1.905 2.155 2.423 2.912 3.227 3.509 3.767 4.017 0.968 1.154 1.335 1.511 1.655 1.813 1.968 2.188 2.428 2.659 2.932 3.204 3.591 3.878 4.122 4.334 4.506 1.027 1.194 1.315 1.433 1.536 1.699 1.826 2.063 2.352 2. 653 2.960 3.187 3.575 3.842 4.058 4.247 4.427 0.963 1.147 1.351 1.539 1.679 1.883 2.070 2.279 2.551 2.828 3.234 3.564 3.886 4.150 4.315 0.966 1.141 1.294 1.446 1.596 1.857 2.156 2.413 2.669 2.879 3.307 3.592 3.828 4.064 4.300 0.924 1.163 1.428 1.712 1.992 2.291 2.778 3.103 3.397 3.659 3.893 0.896 1. 008 1.109 1.196 1.296 1.532 1.781 2.038 2.301 2.574 3.059 3.354 3.630 3.893 4.144 0.930 1.063 1.330 1.580 1.865 2.160 2.439 2.912 3.221 3.520 3.784 3.988 0.954 1.079 1.205 1.282 1.465 1.676 1.908 2.160 2.411 2.881 3.246 3.554 3.831 4.081 0.905 0.972 1.040 1.287 1.541 1.802 2.080 2.384 2.876 3.183 3. 471 3.730 3.969 1.045 1.235 1.398 1.583 1.758 2.048 2.294 2.522 2.763 3.009 3.417 3.689 3.941 4.184 4.411 0.964 1.075 1.186 1.291 1.525 1.782 2.063 2.347 2.606 3.079 3.394 3.661 3.899 4.131 0.957 1.118 1.276 1.404 1.611 1.848 2.118 2.406 2.680 3.129 3.465 3.764 3.997 4.192 0.982 1.114 1.263 1.527 1. 800 2.084 2.382 2.680 3.137 3.429 3.688 3.917 4.127 0.982 1.054 1.133 1.189 1.243 1.327 1.568 1.822 2.075 2.351 2.629 3.086 3.386 3.667 3.922 4.153 0.965 1.098 1.238 1.399 1.503 1.591 1.670 1.895 2.128 2.371 2.622 2.886 3.341 3.634 3.897 4.126 4.338 0.915 1.050 1.183 1.300 1.443 1.558 1.825 2.069 2. 348 2.641 2.916 3.360 3.634 3.893 4.109 4.308 1.025 1.187 1.363 1.512 1.657 1.806 2.085 2.346 2.595 2.846 3.091 3.500 3.755 3.999 4.232 4.454 1.065 1.231 1.400 1.560 1.717 1.870 1.984 2.198 2.427 2.655 2.896 3.110 3.524 3.813 4.060 4.287 4.501 0.895 0.991 1.089 1.183 1.302 1.409 1.666 1.926 2.168 2. 434 2.700 3.148 3.438 3.718 3.988 4.230 1.027 1.169 1.348 1.439 1.581 1.788 1.992 2.272 2.564 2.977 3.327 3.601 3.871 4.052 4.181 4.181 4.181 6235366411468800。000 南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南南

答案1

我解决这个问题的简单方法是使用count-matches记录分隔符进行计数,然后添加一个。假设分隔符是空格,请选择该行并输入M-x count-matches <RET><space><RET>。提供以下正则表达式来count-matches处理您的数据,而不是计算分隔符,但输入起来比较繁琐:\b-?[0-9]+\.[0-9]+\b\|\bNaN\b。您的示例数据没有显示任何负面数据,但我在正则表达式中包含了可选的“-”,以防可能。

答案2

也许您可以使用count-matcheswith\.作为正则表达式。

相关内容