### Method

# GLib PatternSpec match

since: 2.70

#### Declaration

    gboolean
    g_pattern_spec_match (
      GPatternSpec* pspec,
      gsize string_length,
      const gchar* string,
      const gchar* string_reversed
    )

#### Description

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 `NULL`, this is more efficient if the reversed version of the string to be matched is not at hand, as `g_pattern_match()` will only construct it if the compiled pattern requires reverse matches.

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 g_pattern_match().

Note also that the reverse of a UTF-8 encoded string can in general not be obtained by g_strreverse(). This works only if the string does not contain any multibyte characters. GLib offers the `g_utf8_strreverse()` function to reverse UTF-8 encoded strings.

Available since: 2.70

#### Parameters

`string_length`

  Type: `gsize`

  The length of `string` (in bytes, i.e. strlen(), not g_utf8_strlen())

`string`

  Type: `const gchar*`

  The UTF-8 encoded string to match.

  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`string_reversed`

  Type: `const gchar*`

  The reverse of `string` or `NULL`.

  The argument can be `NULL`.
  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

#### Return value

Type: `gboolean`

`TRUE` if `string` matches `pspec`.