From d5bf3b13c31486d9f41f610e13fffdcdbc48556d Mon Sep 17 00:00:00 2001 From: BegBedion <127584073+BegBedion@users.noreply.github.com> Date: Mon, 9 Mar 2026 18:24:29 +0000 Subject: [PATCH] Fix: Support bare multiplier words in English number recognition MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Allow recognition of bare multiplier words like 'hundred', 'thousand', 'million', etc. without requiring a coefficient prefix. This enables patterns like 'hundred dollars' to be correctly recognized as 00. Previously only patterns with explicit coefficients were supported: - 'one hundred dollars' ✓ - 'a hundred dollars' ✓ - 'hundred dollars' ✗ (was not recognized) Fixes #3208 --- Patterns/English/English-Numbers.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Patterns/English/English-Numbers.yaml b/Patterns/English/English-Numbers.yaml index b6eb3167fe..7b499d46f3 100644 --- a/Patterns/English/English-Numbers.yaml +++ b/Patterns/English/English-Numbers.yaml @@ -31,7 +31,7 @@ TenToNineteenIntegerRegex: !simpleRegex TensNumberIntegerRegex: !simpleRegex def: (?:seventy|twenty|thirty|eighty|ninety|forty|fifty|sixty) SeparaIntRegex: !nestedRegex - def: (?:(({TenToNineteenIntegerRegex}|({TensNumberIntegerRegex}(\s+(and\s+)?|\s*-\s*){ZeroToNineIntegerRegex})|{TensNumberIntegerRegex}|{ZeroToNineIntegerRegex})(\s+{RoundNumberIntegerRegex})*))|(({AnIntRegex}(\s+{RoundNumberIntegerRegex})+)) + def: (?:(({TenToNineteenIntegerRegex}|({TensNumberIntegerRegex}(\s+(and\s+)?|\s*-\s*){ZeroToNineIntegerRegex})|{TensNumberIntegerRegex}|{ZeroToNineIntegerRegex})(\s+{RoundNumberIntegerRegex})*))|(({AnIntRegex}(\s+{RoundNumberIntegerRegex})+))|({RoundNumberIntegerRegex})) references: [ TenToNineteenIntegerRegex, TensNumberIntegerRegex, ZeroToNineIntegerRegex, RoundNumberIntegerRegex, AnIntRegex ] AllIntRegex: !nestedRegex def: (?:((({TenToNineteenIntegerRegex}|({TensNumberIntegerRegex}(\s+(and\s+)?|\s*-\s*){ZeroToNineIntegerRegex})|{TensNumberIntegerRegex}|{ZeroToNineIntegerRegex}|{AnIntRegex})(\s+{RoundNumberIntegerRegex})+)\s+(and\s+)?)*{SeparaIntRegex})