попробуйте использовать dismax вместо solr обычного логического запроса, который дает поиск фраз и поиск по полям, потому что вы делаете запрос фраз.
пример:
q = أحمد + فنان + مجتهد & wt= json & indent = true & defType = edismax & qf = title_ar + title_en + title & mm = 70% 25 & stopwords = true & lowercaseOperators = true
, как вы увидите в ответе, я получаю совпадение, но не точное совпадение, проверьте выражение выше, которое вы увидите, мм(«минимальное совпадение») установлено на 70%, это означает, что 70% фразы должны совпадать.для получения дополнительной информации см. (https://wiki.apache.org/solr/ExtendedDisMax) результат запроса выше:
{"responseHeader": {"status": 0, "QTime": 1, "params": {"lowercaseOperators"":" true "," mm ":" 70% "," indent ":" true "," uf ":" title_ar title_en title "," q ":" أحمد فنان مجتهد "," qf ":" title_ar title_entitle "," _ ":" 1393151025195 "," stopwords ":" true "," wt ":" json "," defType ":" edismax "}}," response ": {" numFound ": 1," start": 0," docs ": [{" id ":" 1 "," title ": [" ahmad популярный исполнитель "]," title_en ": [" ahmad популярный исполнитель "]," title_ar ": ["أحمد فنان مشهور "]," версия": 1460824159992938500}]}}