mirror of
https://github.com/meilisearch/meilisearch.git
synced 2025-07-28 01:01:00 +00:00
Highlight all the matching words
This commit is contained in:
@ -58,7 +58,7 @@ fn main() -> anyhow::Result<()> {
|
||||
let before = Instant::now();
|
||||
|
||||
let query = result?;
|
||||
let documents_ids = index.search(&rtxn, &query)?;
|
||||
let (_, documents_ids) = index.search(&rtxn, &query)?;
|
||||
let headers = match index.headers(&rtxn)? {
|
||||
Some(headers) => headers,
|
||||
None => return Ok(()),
|
||||
|
@ -152,14 +152,21 @@ async fn main() -> anyhow::Result<()> {
|
||||
let before_search = Instant::now();
|
||||
let rtxn = env_cloned.read_txn().unwrap();
|
||||
|
||||
let documents_ids = index.search(&rtxn, &query.query).unwrap();
|
||||
let (words, documents_ids) = index.search(&rtxn, &query.query).unwrap();
|
||||
|
||||
let mut body = Vec::new();
|
||||
if let Some(headers) = index.headers(&rtxn).unwrap() {
|
||||
// We write the headers
|
||||
body.extend_from_slice(headers);
|
||||
|
||||
let re = Regex::new(r"(?i)(hello)").unwrap();
|
||||
let mut regex = format!(r"(?i)\b(");
|
||||
let number_of_words = words.len();
|
||||
words.into_iter().enumerate().for_each(|(i, w)| {
|
||||
regex.push_str(&w);
|
||||
if i != number_of_words - 1 { regex.push('|') }
|
||||
});
|
||||
regex.push_str(r")\b");
|
||||
let re = Regex::new(®ex).unwrap();
|
||||
|
||||
for id in documents_ids {
|
||||
let content = index.documents.get(&rtxn, &BEU32::new(id)).unwrap();
|
||||
|
Reference in New Issue
Block a user