私はすでに通過したこのポストた用途nltk
のcmudict
言葉に音節の数をカウントします:
from nltk.corpus import cmudict
d = cmudict.dict()
def nsyl(word):
return [len(list(y for y in x if y[-1].isdigit())) for x in d[word.lower()]]
ただし、名前などのcmuの辞書外の単語の場合Rohit
、結果は返されません。
それで、単語の音節を数える他の/より良い方法はありますか?
1
さて、wordcalc.comは "Rohit"を処理できるので、可能であるようです。でもどうやってるかわからない。。。そしてそれは完璧ではありません。
—
Neil Slater
wordcalc.comは「音節」に1のカウントを与えました(私はそれを3と呼びます)。リンクされた質問のハイフネーションルールを使用している可能性があります。これらは多くの場合、顕著な音節と一致しているようですが、100%ではありません。
—
Neil Slater