В базовом разбиении слов для разделения слов используются пробелы и знаки препинания (.,?! "'И т. Д., А в действительности - любые не буквенно-цифровые или обычно символы).
Убедитесь, что вы пропускаете последовательности знаков препинания / пробелов вместо того, чтобы считать лишние «слова» между ними.
Вам придется решить, являются ли числа "словами" или нет. И будет ли "123 456,78 $" одним словом или тремя.
Вы также можете захотеть применить другие правила - например, если вы ищете слова в исходном коде, вы можете использовать символы + - = * / () & ^% $ как «пробел». Если у вас есть идентификаторы в стилях camelCase или PascalCase, вы можете взять найденные «слова» и проверить, есть ли в них символы верхнего регистра в середине или слова.
По сути, это простая проблема - вам просто нужно решить, что такое «слово». Вы можете быть настолько простым или сложным, насколько вам нравится.
Лучший способ получить такое же число слов, что и в Office, - это использовать макросы или автоматизацию, чтобы использовать MS Word для загрузки текста и вычисления количества слов.