TextMeter guides

Word counts that match: Unicode pitfalls

Word counts disagree because 'word' is ambiguous: hyphenations, apostrophes, CJK scripts with no spaces, emojis with modifiers (one grapheme, many code points), and hidden formatting all count differently per tool.

Unicode-correct counting splits on grapheme clusters, not code units: 'café' is 4 characters whether é is composed or decomposed, and flags count as one visible unit.

Mistakes: trusting one tool for billing (agree the method first), counting code with comments as prose, and pasting from Word with tracked changes (deleted text may still count).

Example: 'Hello 👋🏽 world' = 2 words, 13 graphemes, but 17 UTF-16 code units. Invoice by the method, not the number.

Try: Word Counter · Character Counter

Regex in 15 minutes for writers

Regex in 15 minutes: literal text matches itself; . * + ? shape quantity; \d \w \s are digit/word/space; [abc] is a set; ^ $ anchor ends; ( ) capture for reuse as $1. That covers 90% of real jobs.

Writers use it to normalize manuscripts: double spaces → one, straight quotes → curly, 'Chapter (\d+)' → numbered headings, trailing whitespace → gone.

Mistakes: greedy .* eating across lines (use .*? or [^\n]*), forgetting to escape . ( in literal searches, and find-replacing without a backup or preview of all matches.

Example: find ' (\w+)' with leading double-space, replace '$1' — collapses accidental doubles across a 90,000-word draft in one pass.

Try: Regex Tester Lite · Find & Replace

CSV that survives Excel

CSV that survives Excel follows RFC 4180: UTF-8 with BOM for Excel, CRLF line endings, quotes around any field containing comma/quote/newline, and doubled quotes ('say ''hi''') inside quoted fields.

Open in Excel via Data → From Text/CSV (not double-click) so you control encoding and delimiters — semicolons for locales where comma is the decimal separator.

Mistakes: leading zeros eaten (007 → 7 — prefix with apostrophe or import as text), dates reinterpreted (03/04 flips month/day by locale), and saving back with the wrong delimiter.

Example: '"García, Ana",007,"03/04/2026"' imports as three intact text fields. Plain 007,03/04/2026 arrives mangled.

Try: CSV ⇄ JSON · JSON Formatter / Validator

Advertisement
Content continues below

All TextMeter tools