Zahlen zählen in Emacs

Zahlen zählen in Emacs

Angenommen, ich habe die folgende lange Zeile in Emacs ausgewählt. Wie kann ich zählen, wie viele Zahlen (oder NaN) ich habe?

Ich habe es versucht M-x count-words, aber es ergibt die falsche Nummer. Es heißt 1 line 1135 words and 3565 characters, aber es enthält tatsächlich 640Zahlen

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 NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN NaN

Antwort1

Meine einfache Herangehensweise an dieses Problem besteht darin, count-matchesdie Datensatztrennzeichen zu zählen und dann eins hinzuzufügen. Angenommen, Ihr Trennzeichen ist ein Leerzeichen, wählen Sie die Zeile aus und geben Sie ein M-x count-matches <RET><space><RET>. Anstatt Trennzeichen zu zählen, count-matchesfunktioniert die Eingabe des folgenden regulären Ausdrucks mit Ihren Daten, ist aber mühsamer einzugeben: \b-?[0-9]+\.[0-9]+\b\|\bNaN\b. Ihre Beispieldaten zeigen keine negativen Daten, aber ich habe für den Fall, dass dies der Fall ist, das optionale „-“ in den regulären Ausdruck aufgenommen.

Antwort2

Vielleicht können Sie count-matches„mit“ \.als regulären Ausdruck verwenden.

verwandte Informationen