Счётчик слов и символов

Подсчитывайте слова, символы, предложения и абзацы в тексте.

0
Слова
0
Символы
0
Символы (без пробелов)
0
Предложения
0
Абзацы
1
Строки
~1 мин
Время чтения

Счётчик слов анализирует текст и мгновенно сообщает количество слов, символов (с пробелами и без), предложений и абзацев. Это незаменимый инструмент для тех, кто работает в рамках ограничений по длине — при написании твитов, эссе для поступления, текстов для журналов или рекламных материалов.

Вставьте или введите текст в поле ввода — счётчики обновляются в реальном времени по мере написания. Инструмент также рассчитывает время чтения на основе средней скорости чтения взрослого человека — 200-250 слов в минуту.

Подсчёт слов и символов может незначительно различаться в зависимости от метода. Инструмент следует наиболее распространённому соглашению текстовых редакторов: последовательные непробельные символы образуют слово, пробелы разделяют слова.

Часто задаваемые вопросы

Реализация кода

def count_text(text: str) -> dict:
    words = text.split()
    chars_with_spaces = len(text)
    chars_no_spaces = len(text.replace(" ", "").replace("\n", "").replace("\t", ""))
    sentences = len([s for s in text.replace("!", ".").replace("?", ".").split(".") if s.strip()])
    paragraphs = len([p for p in text.split("\n\n") if p.strip()])
    reading_time_min = round(len(words) / 225, 1)  # ~225 wpm average

    return {
        "words": len(words),
        "chars_with_spaces": chars_with_spaces,
        "chars_no_spaces": chars_no_spaces,
        "sentences": sentences,
        "paragraphs": paragraphs,
        "reading_time_min": reading_time_min,
    }


text = """Hello world. This is a sample paragraph.

This is the second paragraph with more words and sentences!"""

stats = count_text(text)
for key, value in stats.items():
    print(f"{key}: {value}")

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.