Synopsis#include <glib.h> GPatternSpec; GPatternSpec* g_pattern_spec_new (const gchar *pattern); void g_pattern_spec_free (GPatternSpec *pspec); gboolean g_pattern_spec_equal (GPatternSpec *pspec1, GPatternSpec *pspec2); gboolean g_pattern_match (GPatternSpec *pspec, guint string_length, const gchar *string, const gchar *string_reversed); gboolean g_pattern_match_string (GPatternSpec *pspec, const gchar *string); gboolean g_pattern_match_simple (const gchar *pattern, const gchar *string); Description
The
Note that in contrast to
When multiple strings must be matched against the same pattern, it is
better to compile the pattern to a GPatternSpec using DetailsGPatternSpectypedef struct _GPatternSpec GPatternSpec; A GPatternSpec is the 'compiled' form of a pattern. This structure is opaque and its fields cannot be accessed directly. g_pattern_spec_new ()GPatternSpec* g_pattern_spec_new (const gchar *pattern); Compiles a pattern to a GPatternSpec.
g_pattern_spec_free ()void g_pattern_spec_free (GPatternSpec *pspec); Frees the memory allocated for the GPatternSpec.
g_pattern_spec_equal ()gboolean g_pattern_spec_equal (GPatternSpec *pspec1, GPatternSpec *pspec2); Compares two compiled pattern specs and returns whether they will match the same set of strings.
g_pattern_match ()gboolean g_pattern_match (GPatternSpec *pspec, guint string_length, const gchar *string, const gchar *string_reversed);
Matches a string against a compiled pattern. Passing the correct length of
the string given is mandatory. The reversed string can be omitted by passing
Note that, if the user code will (possibly) match a string against a
multitude of patterns containing wildcards, chances are high that some
patterns will require a reversed string. In this case, it's more efficient
to provide the reversed string to avoid multiple constructions thereof in
the various calls to
Note also that the reverse of a UTF-8 encoded string can in general
not be obtained by
g_pattern_match_string ()gboolean g_pattern_match_string (GPatternSpec *pspec, const gchar *string);
Matches a string against a compiled pattern. If the string is to be
matched against more than one pattern, consider using
g_pattern_match_simple ()gboolean g_pattern_match_simple (const gchar *pattern, const gchar *string);
Matches a string against a pattern given as a string.
If this function is to be called in a loop, it's more efficient to compile
the pattern once with
|