功能说明
分析粘贴的文本,在一个网格中报告 12 项统计指标:字符数(含空格和不含空格)、词数、句子数、段落数、行数、音节数、阅读时间、朗读时间、Flesch 阅读容易度、Flesch-Kincaid 年级水平,以及一个从 Very Easy 到 Very Hard 的通俗难度标签。打开时预载一个全字母句样本,因此每个卡片立即有值,Copy as JSON 可以导出卡片背后的原始数据。
各项计数是确定性的:阅读时间按每分钟 200 词计算,朗读时间按每分钟 130 词计算,可读性使用标准 Flesch 公式(206.835 − 1.015 × 词数/句子数 − 84.6 × 音节数/词数)配合元音组音节启发式。100% 客户端运行。
使用方法
- 把文本粘贴(或输入)到 Text 框中 - 每次按键网格都会更新。
- 点击 Sample 重新加载内置的全字母句段落,或点击 Clear 清空输入框。
- 阅读卡片:顶部几行是计数,然后是阅读/朗读时间(格式为
7s/2m 41s),最后是两个可读性分数和难度标签。 - 点击 Copy as JSON 获取完整的统计对象(包括毫秒级时间和不可用分数的
null)。
示例
以下结果通过运行 src/lib/textStats.ts 中的 analyzeText() 验证 - 即工具调用的同一个函数。工具的默认示例文本(The quick brown fox jumps over the lazy dog. Pack my box with five dozen liquor jugs. How vexingly quick daft zebras jump!):
{
"characters": 122,
"charactersNoSpaces": 100,
"words": 23,
"sentences": 3,
"paragraphs": 1,
"lines": 1,
"syllables": 30,
"readingTimeMs": 6900,
"speakingTimeMs": 10615,
"fleschReadingEase": 88.7,
"fleschKincaidGrade": 2.8,
"readabilityLabel": "Very Easy"
}
时间卡片把这些毫秒值格式化显示:阅读时间 7s,朗读时间 11s。
一个短句展示了简单文本如何拉偏分数 - The cat sat on the mat. 得到 23 个字符、18 个不含空格、6 个词、1 个句子、6 个音节,Flesch 116.1,年级 -1.4(没错,是负数 - 对非常短、非常简单的句子,公式会低于零),标签 Very Easy,阅读时间 2s。
空输入框报告全零计数,可读性分数变为 null(显示为 -),因为没有可测量的词。