### Struct

# GLib PatternSpec

#### Description [src]

    struct GPatternSpec {
      /* No available fields */
    }

A `GPatternSpec` struct is the ‘compiled’ form of a glob-style pattern.

The `g_pattern_match_simple()` and `g_pattern_spec_match()` functions match a string against a pattern containing `*` and `?` wildcards with similar semantics as the standard `glob()` function: `*` matches an arbitrary, possibly empty, string, `?` matches an arbitrary character.

Note that in contrast to `glob()`, the `/` character can be matched by the wildcards, there are no `[…]` character ranges and `*` and `?` can not be escaped to include them literally in a pattern.

When multiple strings must be matched against the same pattern, it is better to compile the pattern to a `GPatternSpec` using `g_pattern_spec_new()` and use `g_pattern_spec_match_string()` instead of `g_pattern_match_simple()`. This avoids the overhead of repeated pattern compilation.

#### Constructors

###### g_pattern_spec_new

Compiles a pattern to a `GPatternSpec`.

#### Instance methods

###### g_pattern_spec_copy

Copies `pspec` in a new `GPatternSpec`.

since: 2.70

###### g_pattern_spec_equal

Compares two compiled pattern specs and returns whether they will match the same set of strings.

###### g_pattern_spec_free

Frees the memory allocated for the `GPatternSpec`.

###### g_pattern_spec_match

Matches a string against a compiled pattern.

since: 2.70

###### g_pattern_spec_match_string

Matches a string against a compiled pattern.

since: 2.70