Function
GLibstr_match_string
since: 2.40
Declaration [src]
gboolean
g_str_match_string (
const gchar* search_term,
const gchar* potential_hit,
gboolean accept_alternates
)
Description [src]
Checks if a search conducted for search_term
should match
potential_hit
.
This function calls g_str_tokenize_and_fold()
on both
search_term
and potential_hit
. ASCII alternates are never taken
for search_term
but will be taken for potential_hit
according to
the value of accept_alternates
.
A hit occurs when each folded token in search_term
is a prefix of a
folded token from potential_hit
.
Depending on how you’re performing the search, it will typically be
faster to call g_str_tokenize_and_fold()
on each string in
your corpus and build an index on the returned folded tokens, then
call g_str_tokenize_and_fold()
on the search term and
perform lookups into that index.
As some examples, searching for ‘fred’ would match the potential hit ‘Smith, Fred’ and also ‘Frédéric’. Searching for ‘Fréd’ would match ‘Frédéric’ but not ‘Frederic’ (due to the one-directional nature of accent matching). Searching ‘fo’ would match ‘Foo’ and ‘Bar Foo Baz’, but not ‘SFO’ (because no word has ‘fo’ as a prefix).
Available since: 2.40
Parameters
search_term
-
Type:
const gchar*
The search term from the user.
The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string. potential_hit
-
Type:
const gchar*
The text that may be a hit.
The data is owned by the caller of the function. The value is a NUL terminated UTF-8 string. accept_alternates
-
Type:
gboolean
If true, ASCII alternates are accepted.