<p><a href="https://craftcms.stackexchange.com/a/15939/141">This is the expected behaviour</a>. To say that the native search in Craft has support for plurals, is a stretch. What the search options indicate is whether or not to allow for extra characters to the left and right in the indexed keywords, when searching for a term.</p>
<p>So, if &quot;sponges&quot; is indexed, &quot;sponges&quot;, &quot;sponge&quot;, &quot;spon&quot;, or &quot;pong&quot;, would result in a match when using <code>'subLeft' =&gt; true</code> and <code>'subRight' =&gt; true</code>. If they were false, only &quot;sponges&quot; would match.</p>
<p>If the indexed word is &quot;sponge&quot; and you search for &quot;sponges&quot;, there will be no matches because &quot;sponges&quot; is not a subset of &quot;sponge&quot;.</p>
<p>If you want more advanced search capabilities, you need to integrate some kind of third-party search engine like <a href="https://www.algolia.com/" rel="nofollow noreferrer">Algolia</a>.</p>

CC BY-SA 4.0
2021-10-07T08:27:43.737Z
2021-10-07T08:27:43.737Z
André Elvan
<p>Agree with André's answer, Craft does support <a href="https://craftcms.com/knowledge-base/enabling-fuzzy-search" rel="nofollow noreferrer">fuzzy search</a>, which is what you have setup.</p>
<p>If you are looking for better search capabilities, agreed that <a href="https://www.algolia.com/doc/guides/managing-results/relevance-overview/" rel="nofollow noreferrer">Algolia</a> would be the best suit, you can use the <a href="https://github.com/studioespresso/craft-scout" rel="nofollow noreferrer">Scout plugin</a> to support pushing content to your index. It is getting support for PHP 8 very shortly too. You can then use this in multiple ways, not only to just show results, you can easily incorporate autocomplete or for more out-the-box filtering you can incorporate Algolia's <a href="https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/js/" rel="nofollow noreferrer">InstantSearch.js</a></p>

CC BY-SA 4.0
2021-10-13T12:43:25.577Z
2021-10-13T12:43:25.577Z
zizther
<p>I am struggling to get my head around plurals and fuzzy search etc.</p>
<p>I have seen this article, which seems to help answer this but am hoping someone can clarify based on my scenario
<a href="https://craftcms.stackexchange.com/questions/20388/search-forms-handling-of-plurals/20389#20389">Search forms handling of plurals</a></p>
<p>If i search commerce products for 'sponge' i seem to get results that the word's 'sponge' and also 'sponges' which is great.</p>
<p>If I search for 'sponges' I get the 'sponges' results but ALSO I thought I would get the singular 'sponge' results, but this does not seem to be the case. This is what I want to achieve - is this possible?</p>
<p>In config I have:</p>
<pre><code>    'defaultSearchTermOptions' =&gt; array( 
        'subLeft' =&gt; true,
        'subRight' =&gt; true,
    ),
</code></pre>
<p>//////////////////////////////////</p>
<p>Can anyone clarify what results i should expect or I am doing something wrong?</p>
<p>Thanks
Malcolm</p>

<search><config>
Product Search - redactor description field not indexing
# Product Search - redactor description field not indexing

(Asked by: username_0 on 2021-10-06)

I am struggling to get my head around plurals and fuzzy search etc.
I have seen this article, which seems to help answer this but am hoping someone can clarify based on my scenario
Search forms handling of plurals
If i search commerce products for 'sponge' i seem to get results that the word's 'sponge' and also 'sponges' which is great.
If I search for 'sponges' I get the 'sponges' results but ALSO I thought I would get the singular 'sponge' results, but this does not seem to be the case. This is what I want to achieve - is this possible?
In config I have:
    'defaultSearchTermOptions' => array( 
        'subLeft' => true,
        'subRight' => true,
    ),

//////////////////////////////////
Can anyone clarify what results i should expect or I am doing something wrong?
Thanks
Malcolm

**Tags:** search, config

---

## 2 answers

### Answer by username_1 on 2021-10-07. Score: 1 | Accepted answer

[This is the expected behaviour](https://craftcms.stackexchange.com/a/15939/141). To say that the native search in Craft has support for plurals, is a stretch. What the search options indicate is whether or not to allow for extra characters to the left and right in the indexed keywords, when searching for a term.

So, if "sponges" is indexed, "sponges", "sponge", "spon", or "pong", would result in a match when using `'subLeft' => true` and `'subRight' => true`. If they were false, only "sponges" would match.

If the indexed word is "sponge" and you search for "sponges", there will be no matches because "sponges" is not a subset of "sponge".

If you want more advanced search capabilities, you need to integrate some kind of third-party search engine like [Algolia](https://www.algolia.com/).


---

### Answer by username_2 on 2021-10-13. Score: 1

Agree with André's answer, Craft does support [fuzzy search](https://craftcms.com/knowledge-base/enabling-fuzzy-search), which is what you have setup.

If you are looking for better search capabilities, agreed that [Algolia](https://www.algolia.com/doc/guides/managing-results/relevance-overview/) would be the best suit, you can use the [Scout plugin](https://github.com/studioespresso/craft-scout) to support pushing content to your index. It is getting support for PHP 8 very shortly too. You can then use this in multiple ways, not only to just show results, you can easily incorporate autocomplete or for more out-the-box filtering you can incorporate Algolia's [InstantSearch.js](https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/js/)


---

