diff --git a/modules/nlu/src/backend/pipelines/entities/pattern_extractor.ts b/modules/nlu/src/backend/pipelines/entities/pattern_extractor.ts index 0f8d89c14b6..96c802414be 100644 --- a/modules/nlu/src/backend/pipelines/entities/pattern_extractor.ts +++ b/modules/nlu/src/backend/pipelines/entities/pattern_extractor.ts @@ -51,7 +51,10 @@ export default class PatternExtractor { let partOfPhrase = tok const occ = val.join('+') if (val.length > 1) { - partOfPhrase = (await tokenize(input.substr(cur, occ.length), lang)).join('+') + const _tokens = await tokenize(input.substr(cur + partOfPhrase.length), lang) + while (_tokens.length && partOfPhrase.length < occ.length) { + partOfPhrase += '+' + _tokens.shift() + } } let distance = 0.0