我需要计算句子和段落的数量,但我不明白如何从文本文件中执行此操作。
我可以使用wc
命令计算行数和单词数,但我不理解文本文件中句子和段落的含义。 shell中有任何命令吗?
以下是我们如何计算文本文件中的单词和行数:
wc -w filename
wc -l filename
对于句子和段落,这是我尝试过的:
grep -c \\. #to count number of sentences.
grep -o [.'\n'] #to count number of paragraph.
我不明白如何计算文本文件中句子和段落的数量。
任何想法都会有所帮助。
例如:
主要文章:SSID #SSID隐藏的安全性。
尝试保护无线网络的一种简单但无效的方法是SSID(服务集标识符)。[12] [13]除了最随意的入侵努力之外,这几乎没有提供任何保护......
2段,3句。
答案 0 :(得分:2)
可以在以下假设下获得第一近似值:
(当然,这些都没有在现实中得到满足,但它应该让你开始)
grep -oc \\.
将计算句子数量,
grep -c "^$"
将计算段落数量。如果你的文字格式很强,你可能会找到有用的东西,否则你可以考虑使用自然语言处理工具,例如NLTK。
答案 1 :(得分:2)
要计算句子数,您可以计算peroids,问号和感叹号的数量。但是你遇到了省略号(...)的问题。我想如果之后有空格,你只能计算它。
段落是另一回事。它们是缩进的吗?怎么用标签?算一算吧。
最大的问题是“句子和段落之间的分隔符是什么?”
如果您知道这一点,请定义分隔符正则表达式,并使用您选择的工具计算文件中的数量。