How to Extract Numbers From Messy Text Without Retyping a Thing
Pull every number out of any text — prices, quantities, IDs, decimals, and 1,234-style figures — into a clean list you can paste anywhere, all in your browser.
How to Extract Numbers From Messy Text Without Retyping a Thing
Some of the most tedious work I do is not hard, it is just fiddly: a receipt pasted into a chat, a log line with three IDs buried in prose, a spreadsheet column where half the cells say "1,234.56 (approved)" and the other half say "TBD." The numbers I actually want are right there on the screen, and yet getting them into a tidy list means squinting, selecting, and retyping — which is exactly where a stray keystroke turns 19.99 into 1999.
A number extractor takes that whole chore off your plate. It scans a block of text and pulls out every number it finds, handling decimals and thousands separators (and, optionally, stripping currency symbols and percent signs), so you can lift prices or quantities out of a paragraph without retyping them. The result is a clean column of values, ready to paste into a spreadsheet, a SQL query, or a code array.
What "pull out the numbers" actually means
The naive version of this — grab every run of digits — falls apart fast. 1,234.56 is not the numbers 1, 234, and 56. -7.5 is not 7.5. 6.02e23 is not 6.02 and 23. A real extractor has to make decisions about what counts as one number versus several, and those decisions depend on where your text came from.
The Number Extractor handles each of these cases with a toggle so you stay in control:
- Decimals.
3.14comes back whole when decimals are on; turn the toggle off and it splits into 3 and 14, which is what you want when you only care about whole counts. - Thousands separators. With grouping on,
1,234reads as a single1234and1,234.56as1234.56— the right call for money and large counts. Off, the comma is treated as a plain separator. - Negatives. A leading minus, including the Unicode minus sign, is caught so
dropped to -7.5returns-7.5instead of7.5. - Scientific notation.
6.02e23,3.0e8, and1E-3parse as real numbers when that toggle is on.
Percent signs are dropped rather than divided, so 25% returns 25, not 0.25. That is the printed figure as-is — divide by 100 yourself if you need the fraction.
A worked example
Here is the kind of sentence that shows up in a support ticket or a status update all the time:
Invoice 42 had 3 line items totaling 1,234.56, with a 12.5% discount and a -7.50 credit applied.
Paste that in, keep decimals and thousands separators on, leave negatives on, and the output is:
42
3
1234.56
12.5
-7.5
Five numbers, one per line, no prose, no commas where you didn't want them. Flip the output to comma-separated and you get 42, 3, 1234.56, 12.5, -7.5 — drop that straight into a spreadsheet cell or a code array. The stats row underneath recalculates live, so you can read the count, sum, average, min, and max without ever opening a calculator.
Where this earns its keep
The angle that sells me on a tool like this is how many small, recurring jobs it quietly absorbs.
Summing a pasted column. You copied line-item prices out of a PDF receipt and just want the total. Paste the blob, let the tool keep the decimals and grouping commas, and read the sum off the stats row. No spreadsheet, no retyping, no risk of fat-fingering a value.
Lifting IDs out of a log line. A log reads order 100482 for user 53109 failed retry 3. Turn decimals off so you only get whole IDs, switch to comma-separated output, and paste 100482, 53109, 3 into a SQL IN clause. The line numbers and surrounding prose never tag along.
Cleaning a CSV column that mixes numbers and notes. Each cell is something like 1,234.56 (approved) or TBD. Keep thousands and decimals on and you get a list of just the values, with the text noise dropped. From there you can dedupe and sort to spot outliers before importing.
Pulling percentages for a quick check. A quarterly summary is full of up 12.5%, churn -3.2%, margin 41%. Paste it, leave negatives on, and the percent signs come off so you have 12.5, -3.2, 41 ready to average or chart — far faster than hunting each figure by eye.
Getting the format toggles right
Most of the surprises people hit are not bugs, they are mismatched toggles. Three are worth memorizing.
First, leave the thousands toggle off when commas are list separators, not grouping. In pick 1,2,3 the commas separate items, and the tool still reads 1, 2, 3 correctly because 2 and 3 are not three-digit groups. But codes 1,234,567 collapses into a single 1234567. If those were three separate codes, turn grouping off first.
Second, remember what the decimals toggle does. With it off, 3.14 yields 3 and 14 as two numbers. If your output suddenly has roughly twice as many values as you expected, check this toggle before assuming the parser misbehaved.
Third, percent signs are dropped, not converted. 25% is extracted as 25. The tool gives you the printed figure; the math is yours to do afterward.
Once the numbers are out, you'll often want them ordered. Sending the list through the Text Sorter gives you ascending or descending order and makes duplicates obvious, which pairs nicely with the extractor's own dedupe option when you're cleaning data for import.
Everything stays on your machine
This matters more than it sounds. Every step — the matching, the parsing, the dedupe, the sort, and the stats — runs as plain JavaScript inside your browser tab. The text you paste, the numbers pulled out, and the totals never leave the page, and nothing is logged. That means you can drop in an internal receipt, a customer log line, or a financial export without it touching a server.
The one caveat: the shareable link encodes your input text in the query string, so a link pasted into chat will record that text in the recipient's server access log. For anything confidential, use the copy button on the output rather than sharing the URL.
If your messy text is more than just numbers — say a wall of links or addresses — the same family of extractors covers those too; the URL Extractor pulls every link out of a block the same way this one pulls numbers. Pick the one that matches what you're fishing for, and let the parser do the squinting.
Extracting numbers from text is one of those chores that feels too small to automate right up until you've done it for the fifth time that day. A few seconds of pasting beats a few minutes of selecting and retyping, every single time.
Made by Toolora · Updated 2026-06-13