From cffc3822255431a5c7417f6b1d44437d9a1962b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Phil=20H=C3=B6fer?= <phil.hoefer@suma-ev.de> Date: Mon, 22 Jul 2024 11:23:51 +0200 Subject: [PATCH] Fix Double Whitespace In Markov Predictor --- src/predictors/basic_markov.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/predictors/basic_markov.rs b/src/predictors/basic_markov.rs index 832b8e3..be08257 100644 --- a/src/predictors/basic_markov.rs +++ b/src/predictors/basic_markov.rs @@ -77,17 +77,19 @@ impl Predictor for MarkovChainPredictor { } fn predict(&self, query: &str, n: usize) -> Vec<String> { - if let Some(top_words) = + let split_query: Vec<&str> = query.split_whitespace().collect(); + + if let Some(top_words) = get_top_following_words( &self.chain, - query.split_whitespace().last().unwrap_or(""), + split_query.last().unwrap_or(&""), n, self.configuration.get("term_frequency_threshold").unwrap_or(&String::from("2")).parse::<usize>().unwrap() ) { let predictions: Vec<String> = top_words .into_iter() - .map(|(word, _)| format!("\"{} {}\"", query, word)) + .map(|(word, _)| format!("\"{} {}\"", query.trim(), word.trim())) .collect(); return predictions; } -- GitLab