Zählen Sie die Zeichen in einem Abschnitt und vergleichen Sie sie mit dem Bereich

Zählen Sie die Zeichen in einem Abschnitt und vergleichen Sie sie mit dem Bereich

Ich möchte die Anzahl der Zeichen in einem Abschnitt zählen und dann anzeigen, ob dieser Wert unter, innerhalb oder über dem Grenzwert liegt. Ich habe den Code vonDynamisches Zählen und Zurückgeben der Anzahl von Wörtern in einem Abschnitt. Und ich habe Folgendes (kompiliere es mit pdflatex --shell-escape mwe.tex).

\documentclass{article}

\newcommand{\wordcount}{%
    \immediate\write18{texcount -merge -sub=section \jobname.tex  | grep "Section" | sed -e 's/+.*//' | sed -n \thesection p > 'count.txt'} \input{count.txt}}

\usepackage{lipsum}

\begin{document}

\section{test1}
\wordcount
\ifnum\wordcount<1000 Below 
\ifnum\worcount>2000 Above
\else Inside

foo bar


\section{test2}
\wordcount

foo bar

foo bar

foo bar

\end{document}

Der obige Code funktioniert nicht, da \wordcountes sich im LaTeX-Sinne nicht wirklich um einen Wert handelt. Gibt es eine Möglichkeit, ihn in einen echten Wert zu übersetzen, damit der Code funktioniert?

Eine andere Lösung wäre die VerwendungUmgebung, die Wörter im Inneren zählt, aber in diesem Fall müsste ich den Wert jedes Zählers speichern und später anzeigen.

Antwort1

Das Perl-Skript TeXcount (http://app.uio.no/ifi/texcount/) gibt eine Wortanzahl Ihres TeX-Dokuments aus, aufgeschlüsselt nach Abschnitten. Ein Beispiel ist unten dargestellt. Sie können die .tex-Datei auch weglassen und ein -help-Flag hinzufügen, um die unzähligen Optionen anzuzeigen.

$ perl texcount.pl paper.tex 

File: paper.tex
Encoding: ascii
Words in text: 5824
Words in headers: 22
Words outside text (captions, etc.): 1032
Number of headers: 8
Number of floats/tables/figures: 18
Number of math inlines: 48
Number of math displayed: 0
Subcounts:
  text+headers+captions (#headers/#floats/#inlines/#displayed)
  90+12+0 (1/0/6/0) _top_
  162+1+0 (1/0/1/0) Section: Abstract
  751+1+0 (1/0/1/0) Section: Introduction
  795+1+0 (1/0/6/0) Section: Methods
  3964+2+0 (1/0/20/0) Section: Results \& Discussion
  44+1+0 (1/0/0/0) Section: Acknowledgments
  0+2+320 (1/9/0/0) Section: Table Legends
  18+2+712 (1/9/14/0) Section: Figure Legends

verwandte Informationen