読みやすさスコア
Flesch-Kincaidなどの読みやすさ指標でテキストを分析します。
SMOGグレードには30文以上必要です。
このツールについて
リーダビリティスコアツールは、Flesch-Kincaid Grade LevelやFlesch Reading Easeなどの確立された測定法を使用して、テキストがどの程度理解しやすいか、または難しいかを分析します。これらの公式は文の長さ、単語の複雑さ、音節数などの要因を測定して、あなたの文章の明確さに関する実用的な洞察を提供します。執筆者、教育者、コンテンツクリエイターにとって、テキストのリーダビリティを理解することは、メッセージが目的の読者に効果的に届くようにするために不可欠です。
テキストをツールに貼り付けるだけで、複数のリーダビリティスコアが即座に計算されます。Flesch Reading Easeスコアは0~100の範囲で、スコアが高いほど読みやすく、Flesch-Kincaid Grade Levelはテキストを理解するのに必要な米国の学年を示します。このツールは単語数、文数、平均文の長さ、音節分析を含む詳細なメトリクスを表示します。これはブログ記事、学術論文、マーケティングコピー、特定の読者理解レベルに到達する必要がある教育教材の作成に特に有用です。
リーダビリティ公式は英語テキストで最も効果的であり、技術用語、固有名詞、または専門用語では精度が低い場合があることに注意してください。スコアはガイドラインであり、絶対的なルールではありません。文脈、単語の選択、フォーマットも全体的な明確さに重要な役割を果たします。学生のエッセイを改善する場合でも、より広くアピールするためにウェブコンテンツを最適化する場合でも、専門的なコミュニケーションがアクセス可能であることを確認する場合でも、このツールはあなたの文章を改善するために必要な定量的フィードバックを提供します。
よくある質問
コード実装
import re
import math
def count_syllables(word: str) -> int:
word = word.lower().strip(".,!?;:")
if len(word) <= 3:
return 1
word = re.sub(r'e$', '', word)
vowels = re.findall(r'[aeiouy]+', word)
return max(1, len(vowels))
def readability_scores(text: str) -> dict:
sentences = len(re.findall(r'[.!?]+', text)) or 1
words_list = re.findall(r'\b\w+\b', text)
words = len(words_list) or 1
syllables = sum(count_syllables(w) for w in words_list)
complex_words = sum(1 for w in words_list if count_syllables(w) >= 3)
flesch_ease = 206.835 - 1.015 * (words / sentences) - 84.6 * (syllables / words)
fk_grade = 0.39 * (words / sentences) + 11.8 * (syllables / words) - 15.59
gunning_fog = 0.4 * ((words / sentences) + 100 * (complex_words / words))
return {
"flesch_reading_ease": round(flesch_ease, 1),
"flesch_kincaid_grade": round(fk_grade, 1),
"gunning_fog_index": round(gunning_fog, 1),
"word_count": words,
"sentence_count": sentences,
"syllable_count": syllables,
}
sample = "The quick brown fox jumps over the lazy dog. It was a beautiful day in the park."
print(readability_scores(sample))Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.