advancedSyntaxFeatures parameter defines which advanced query features are enabled when advancedSyntax is set to true.
Options
Enables exact phrase matching with double quotes (
Typo tolerance is not applied inside quoted phrases.
").
For example, "search engine" only matches records where “search” is followed by “engine” in a searchable attribute.Typo tolerance is not applied inside quoted phrases.
Enables word exclusion using the minus sign (
-).
For example, search -engine matches records that contain “search” but not “engine”.Example
Current API clients
Current API clients
var response = await client.SearchSingleIndexAsync<Hit>(
"INDEX_NAME",
new SearchParams(
new SearchParamsObject
{
Query = "query",
AdvancedSyntax = true,
AdvancedSyntaxFeatures = new List<AdvancedSyntaxFeatures>
{
Enum.Parse<AdvancedSyntaxFeatures>("ExactPhrase"),
},
}
)
);
final response = await client.searchSingleIndex(
indexName: "INDEX_NAME",
searchParams: SearchParamsObject(
query: "query",
advancedSyntax: true,
advancedSyntaxFeatures: [
AdvancedSyntaxFeatures.fromJson("exactPhrase"),
],
),
);
response, err := client.SearchSingleIndex(client.NewApiSearchSingleIndexRequest(
"INDEX_NAME").WithSearchParams(search.SearchParamsObjectAsSearchParams(
search.NewEmptySearchParamsObject().SetQuery("query").SetAdvancedSyntax(true).SetAdvancedSyntaxFeatures(
[]search.AdvancedSyntaxFeatures{search.AdvancedSyntaxFeatures("exactPhrase")}))))
if err != nil {
// handle the eventual error
panic(err)
}
SearchResponse response = client.searchSingleIndex(
"INDEX_NAME",
new SearchParamsObject()
.setQuery("query")
.setAdvancedSyntax(true)
.setAdvancedSyntaxFeatures(Arrays.asList(AdvancedSyntaxFeatures.EXACT_PHRASE)),
Hit.class
);
const response = await client.searchSingleIndex({
indexName: 'indexName',
searchParams: { query: 'query', advancedSyntax: true, advancedSyntaxFeatures: ['exactPhrase'] },
});
var response =
client.searchSingleIndex(
indexName = "INDEX_NAME",
searchParams =
SearchParamsObject(
query = "query",
advancedSyntax = true,
advancedSyntaxFeatures =
listOf(AdvancedSyntaxFeatures.entries.first { it.value == "exactPhrase" }),
),
)
$response = $client->searchSingleIndex(
'INDEX_NAME',
['query' => 'query',
'advancedSyntax' => true,
'advancedSyntaxFeatures' => [
'exactPhrase',
],
],
);
response = client.search_single_index(
index_name="INDEX_NAME",
search_params={
"query": "query",
"advancedSyntax": True,
"advancedSyntaxFeatures": [
"exactPhrase",
],
},
)
response = client.search_single_index(
"INDEX_NAME",
Algolia::Search::SearchParamsObject.new(
query: "query",
advanced_syntax: true,
advanced_syntax_features: ["exactPhrase"]
)
)
val response = Await.result(
client.searchSingleIndex(
indexName = "INDEX_NAME",
searchParams = Some(
SearchParamsObject(
query = Some("query"),
advancedSyntax = Some(true),
advancedSyntaxFeatures = Some(Seq(AdvancedSyntaxFeatures.withName("exactPhrase")))
)
)
),
Duration(100, "sec")
)
let response: SearchResponse<Hit> = try await client.searchSingleIndex(
indexName: "INDEX_NAME",
searchParams: SearchSearchParams.searchSearchParamsObject(SearchSearchParamsObject(
query: "query",
advancedSyntax: true,
advancedSyntaxFeatures: [SearchAdvancedSyntaxFeatures.exactPhrase]
))
)
Legacy API clients
Legacy API clients
index.Search(new Query {
AdvancedSyntax = true,
AdvancedSyntaxFeatures = new List { "exactPhrase" }
});
res, err := index.Search(
"query",
opt.AdvancedSyntax(true),
opt.AdvancedSyntaxFeatures("exactPhrase"),
)
index.search(
new Query("query")
.setAdvancedSyntax(true)
.setAdvancedSyntaxFeatures(Arrays.asList("exactPhrase"))
);
index
.search("query", {
advancedSyntax: true,
advancedSyntaxFeatures: ["exactPhrase"],
})
.then(({ hits }) => {
console.log(hits);
});
val query = query("query") {
advancedSyntax = true
advancedSyntaxFeatures {
+ExactPhrase
}
}
index.search(query)
$results = $index->search('query', [
'advancedSyntax' => true,
'advancedSyntaxFeatures' => ['exactPhrase']
]);
results = index.search(
"query", {"advancedSyntax": True, "advancedSyntaxFeatures": ["exactPhrase"]}
)
results = index.search(
"query",
{
advancedSyntax: true,
advancedSyntaxFeatures: ["exactPhrase"]
}
)
client.execute {
search into "myIndex" query Query(
query = Some("query string"),
advancedSyntax = Some(true),
advancedSyntaxFeatures = Some(Seq("exactPhrase"))
)
}