簡體   English   中英

Sunspot Rails-在全文搜索中獲取匹配的子字符串

[英]Sunspot Rails - get matched substring in fulltext search

我需要你的幫助。 我想在全文黑子搜索中獲取匹配的字符串。 那就是我的代碼現在的樣子

search2 = WebsiteEntry.search do
    fulltext params[:q]
  end

  search2.each_hit_with_result do |hit, res|
    @match = <Here I need your Help, i need the substring on which sunspot made a hit>
    @results.push SearchResult.new(res, hit.score, @match)
  end
end

現在,如果我要搜索“測試”一詞,黑子將查找“測試”是子字符串且不區分大小寫的所有內容。 例如:Sunspot返回匹配的單詞“ FirstTest”或“ TEST2”或“ testit”。

是否可以獲取匹配的字符串? 我需要黑子擊中的繩子

在“ FirstTest”中需要點擊“ Test”。 因為我想展示黑子在哪里建立了比賽。 因此,從“ FirstTest”中,我需要子字符串“ Test”。 從“ TEST2”中,我需要“ TEST”,依此類推。

謝謝。

我現在有解決我的問題的方法。 “ each_hit_with_result”函數中的“ hit”-Objekt返回具有匹配子字符串的列表,稱為“ highlight”

search2 = WebsiteEntry.search do
    fulltext params[:q] do
      highlight :domain
    end
  end

  search2.each_hit_with_result do |hit, res|
    hit.highlight(:domain).format { |word| puts "highlight: "+word}

不,我要從全文搜索中獲取每個匹配的字符串。 問題是,我沒有將我的屬性標記為突出顯示。 謝謝

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM