From ea8a4f6d3b5bac8ffed1ee339126c2fdb375ded5 Mon Sep 17 00:00:00 2001 From: Patrick Werner Date: Wed, 16 Feb 2022 09:40:34 -0800 Subject: [PATCH] Numeral/DE: fix eine not being recognized (#684) Summary: Numbers like "eine million" "eine milliarde" were not recognized correctly. Pull Request resolved: https://github.com/facebook/duckling/pull/684 Reviewed By: girifb Differential Revision: D34274203 Pulled By: stroxler fbshipit-source-id: 2a9018799972d110a9c99d777c622e136566dbe9 --- Duckling/Numeral/DE/Corpus.hs | 3 ++- Duckling/Numeral/DE/Rules.hs | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/Duckling/Numeral/DE/Corpus.hs b/Duckling/Numeral/DE/Corpus.hs index be6e2d3a..b051b935 100644 --- a/Duckling/Numeral/DE/Corpus.hs +++ b/Duckling/Numeral/DE/Corpus.hs @@ -140,6 +140,7 @@ allExamples = concat [ "1.416,15" ] , examples (NumeralValue 1000000.0) - [ "1.000.000,00" + [ "1.000.000,00", + "eine million" ] ] diff --git a/Duckling/Numeral/DE/Rules.hs b/Duckling/Numeral/DE/Rules.hs index ed31f6ba..1a2ce59c 100644 --- a/Duckling/Numeral/DE/Rules.hs +++ b/Duckling/Numeral/DE/Rules.hs @@ -255,7 +255,7 @@ ruleZeroToNineteen :: Rule ruleZeroToNineteen = Rule { name = "integer (0..19)" , pattern = - [ regex "(keine[rn]|keine?s?|null|nichts|eins?(er)?|zwei|dreizehn|drei|vierzehn|vier|fünfzehn|fünf|sechzehn|sechs|siebzehn|sieben|achtzehn|acht|neunzehn|neun|elf|zwölf)" + [ regex "(keine[rn]|keine?s?|null|nichts|eins?(er?)?|zwei|dreizehn|drei|vierzehn|vier|fünfzehn|fünf|sechzehn|sechs|siebzehn|sieben|achtzehn|acht|neunzehn|neun|elf|zwölf)" ] , prod = \tokens -> case tokens of (Token RegexMatch (GroupMatch (match:_)):_) ->