我正在实现可读性测试并且已经实现了检测可比性的简单算法。 检测元音的序列我用单词计算它们,例如单词“shoud”包含一个元音序列,即'ou'。在我计算它们之前,我正在删除像-les,-e,-ed这样的后缀(例如单词“like”包含一个音节但是两个元音序列,所以这个方法有效。)
但是... 考虑这些词/序列:
如何处理特殊字符?全部删除?大多数单词都可以,但不能用“n”和“x射线”。以及如何对待密码。
这些是特殊的单词案例,但我很高兴看到这个主题的一些经验或想法。
答案 0 :(得分:1)
我建议您首先确定您的数据中有多少是由这些词组成的,以及它对您的程序的整体性能有多重要。还要汇编一些最常出现的统计数据。
对于这个问题没有简单的正确解决方案,但我可以提出一些启发式方法:
'
)之间的shouldn't
似乎标志着一个音节的缩写'
一侧带有元音或字边界(I'd
,goin'
)似乎没有这样做(但请注意goin'
仍然是两个音节) n'
在内的任何字词都至少有一个音节-
)可以通过将双方的文本视为单独的单词来处理 3rd
可以通过将序数写为单词的代码或更简单的启发式方法来处理。