Skip to content
Allin

Text

29 guides on text

Counting, comparing, cleaning and converting text. Guides on what a character, a word and a byte each mean to a computer — and why the three counts of the same paragraph rarely agree.

Start here

Ranked by how many pages of this site link to them, not by traffic.

  1. 1Numbering the Lines of a Text for a Review with Several PeopleNumbering starts at 1 and cannot be set to 0, the alignment is spaces rather than zeros, and the remover undoes eight of the eleven separators without touching the indentation. What it still cannot do is tell your numbers from its own.
  2. 2Detecting the Language of a Text, and Why Short Texts FailMeasured, not asserted: 90 short real phrases across six languages, none declined and 68 right — 76%, falling to 64% under sixteen letters. Four of the wrong answers came back at 100% confidence.
  3. 3Filtering Lines by a Pattern Without a Command LineThis is grep for people who do not use grep, with one important difference: the match is a plain substring, so a real regular expression returns an empty box and no error. Every claim here was checked by running the tool.

Tools for this section

All our text & language tools

Latest guides

August 14, 2026
Explainer · Text

Detecting the Language of a Text, and Why Short Texts Fail

Measured, not asserted: 90 short real phrases across six languages, none declined and 68 right — 76%, falling to 64% under sixteen letters. Four of the wrong answers came back at 100% confidence.

Daniel Okonkwo · 16 min read

August 13, 2026
August 12, 2026
Guide · Text

Generating an Application Secret Key Correctly

How to tell a sound secret-key generator from an unsound one, using this one as a worked example: which random source it calls, how to compute the entropy yourself, and what actually breaks the day you rotate the key.

Daniel Okonkwo · 13 min read

How-to · Text

Numbering the Lines of a Text for a Review with Several People

Numbering starts at 1 and cannot be set to 0, the alignment is spaces rather than zeros, and the remover undoes eight of the eleven separators without touching the indentation. What it still cannot do is tell your numbers from its own.

Daniel Okonkwo · 15 min read

August 10, 2026
Explainer · Text

Counting Characters Against a Limit Someone Else Set

One emoji is 1 character, or 7, or 11, or 25, depending on who is counting. Which one your form, your database and your SMS gateway mean — and a one-paste test that tells you which you are facing.

Daniel Okonkwo · 13 min read

Explainer · Text

Sentence Case and Title Case: The Rules Differ by Language

English title case has three different cutoffs depending on the style guide. French, Spanish, Portuguese and Italian have none at all. German capitalises every noun. The tool knows about none of this — here is exactly what it does.

Daniel Okonkwo · 13 min read

Explainer · Text

Extracting Every Email Address or URL from a Block of Text

A URL at the end of a sentence keeps the full stop; an email address at the end of the same sentence does not. An accented first name in an address comes back truncated. Every case here was run through the tools and the exact output is reported.

Daniel Okonkwo · 14 min read

August 7, 2026
How-to · Text

Filtering Lines by a Pattern Without a Command Line

This is grep for people who do not use grep, with one important difference: the match is a plain substring, so a real regular expression returns an empty box and no error. Every claim here was checked by running the tool.

Daniel Okonkwo · 11 min read

Explainer · Text

Finding Duplicates in a List Without a Spreadsheet

Two lines that look identical are often not identical. Case, a trailing space, a no-break space and two different encodings of the same accented letter were each run through the duplicate finder, and it reported no duplicates for three of the four.

Daniel Okonkwo · 11 min read

August 6, 2026
Guide · Text

Cleaning Up a List Pasted from a Spreadsheet or a PDF

A paste carries characters you cannot see: no-break spaces, soft hyphens, zero-width spaces, tabs and CRLF. Four cleanup tools were run against each of them, and they use three different definitions of whitespace.

Daniel Okonkwo · 12 min read

July 14, 2026
Guide · Text

Stripping HTML Safely: What a Tag Remover Can and Cannot Do

Removing tags and sanitising HTML are two different jobs. One real fragment run through a naive regex and through a formatting-aware stripper, with script and style contents, block breaks, comments, CDATA and entity order all shown as output.

Daniel Okonkwo · 14 min read

July 9, 2026
Explainer · Text

Removing Accents Breaks Search — Until You Do It on Both Sides

Folding diacritics is a normalisation step, and normalisation only works when the same function runs on the index and on the query. NFC against NFD with the code points shown, and the letters — ø, ł, ß, œ, ı — that survive the strip untouched.

Daniel Okonkwo · 15 min read

July 8, 2026
How-to · Text

Cleaning Messy Text: The Order of Operations That Actually Matters

Strip tags before decoding entities, trim before deduplicating, collapse whitespace last. Three orderings run in Node, a nine-step pipeline in the right sequence, and the invisible characters — U+00A0, U+200B, U+FEFF — that survive every naive cleanup.

Daniel Okonkwo · 14 min read

July 3, 2026
July 1, 2026
Guide · Text

Character Limits That Actually Bite: Code Units, Code Points and Graphemes

A character is three different things at once. One emoji with a skin tone is 1 grapheme, 2 code points and 4 UTF-16 units. Every count in this guide was measured in Node, plus why an SMS drops from 160 to 70 and why VARCHAR(255) is not 255 of anything in particular.

Daniel Okonkwo · 11 min read

June 30, 2026
May 14, 2026
Explainer · Text

How Instagram Fonts Actually Work (They Are Not Fonts)

Nothing is styled. Each letter is swapped for a different Unicode character that happens to look bold or cursive — which is why a screen reader reads the result as gibberish and some devices show empty boxes.

Daniel Okonkwo · 7 min read

October 6, 2025
Explainer · Text

Counting Words Is Ambiguous, and Every Tool Answers Differently

A word count is a definition, not a measurement. We counted the same paragraph four ways and got 25, 28, 33 and 38 — then counted 50,000 characters of ordinary prose and got agreement to within 4.5%. The gap is entirely driven by compounds, figures and URLs.

Daniel Okonkwo · 12 min read

October 3, 2025
Guide · Text

Formatting Numbers for Six Languages: Separators, Currency and the Parse Back

1,234.56 and 1.234,56 are the same number, and confusing them changes the value a reader parses. We ran Intl.NumberFormat for all six site locales and printed every separator — including the invisible one French uses — then measured why parseFloat cannot undo any of it.

Daniel Okonkwo · 13 min read

September 29, 2025
Explainer · Text

Emoji Are Harder Than They Look: Why "Just Strip the Emoji" Has No One-Line Answer

One visible emoji can be one code point or fourteen UTF-16 units. We ran three popular regexes against a real sentence and each broke differently — one deleted the digits. Here is why, which Unicode property answers which question, and the grapheme-cluster rule that actually works.

Daniel Okonkwo · 13 min read

September 26, 2025
Explainer · Text

The Fake Fonts in Your Bio Are Not Fonts: What Those Characters Really Are

A bold-looking 𝐀 is not the letter A in a bold font — it is U+1D400, a separate character invented for mathematics. We printed the code points, measured what it costs in bytes, broke search, sorting and word counts with it, and scanned the block to find its 28 holes.

Daniel Okonkwo · 13 min read

July 2, 2025
Guide · Text

Markdown Task Lists and What Actually Renders Where

Task lists are not in CommonMark. They are a GitHub Flavored Markdown extension, which is why the same file shows checkboxes in one place and literal brackets in another. The exact marker rule, what nesting does, and a table of what is CommonMark, what is GFM and what is neither — checked against both specs and four renderers.

Daniel Okonkwo · 11 min read

July 1, 2025
Explainer · Text

Where a Line May Break: The Unicode Algorithm Behind Every Wrapped Paragraph

"Break at spaces" fails in most of the world's writing systems. UAX #14 gives every character a line-break class; we looked ours up in Unicode 17.0.0 and ran a conforming implementation over no-break spaces, soft hyphens, zero-width spaces, URLs, Japanese and Thai.

Daniel Okonkwo · 13 min read

June 30, 2025
June 26, 2025
June 3, 2025
Guide · Text

Stripping Markdown: What Plain Text Loses, and What a Regex Gets Wrong

A link becomes text with its destination deleted, a nested list loses its hierarchy, a table becomes a row of words. Then the technical half: markdown has no single spec, and a regex stripper mangles a filename, a multiplication sign and the inside of a code block — all shown against a real parser.

Daniel Okonkwo · 12 min read

June 2, 2025
Explainer · Text

What a Palindrome Checker Has to Decide Before It Can Answer

Case, whitespace, punctuation and diacritics: four policies, six real sentences, and the answer changes with each one. Then the harder half — reversing a string is itself undefined, and code-unit reversal breaks emoji and detaches accents, demonstrated in Node.

Daniel Okonkwo · 12 min read

May 30, 2025
Guide · Text

Find and Replace: The Regex Features That Bite, Demonstrated One by One

Greedy against lazy on the same string, the dot that skips newlines, $& and $$ in the replacement, a reused /g regex that silently skips a row, and why /i knows nothing about Turkish i. Every failure run in Node, with a count-then-replace routine that catches them.

Daniel Okonkwo · 14 min read

May 29, 2025