Tcl\_StringMatch(3) Tcl Library Procedures Tcl\_StringMatch(3)

```

```

# [NAME](#NAME)

Tcl\_StringMatch, Tcl\_StringCaseMatch - test whether a string matches a pattern

# [SYNOPSIS](#SYNOPSIS)

```
#include <tcl.h>

int
Tcl_StringMatch(str, pattern)

int
Tcl_StringCaseMatch(str, pattern, flags)
```

# [ARGUMENTS](#ARGUMENTS)

const char *\*str* (in)

String to test.

const char *\*pattern* (in)

Pattern to match against string. May contain special characters from the set \*?\\\[].

int *flags* (in)

OR-ed combination of match flags, currently only **TCL\_MATCH\_NOCASE**. 0 specifies a case-sensitive search.

```
    
```

# [DESCRIPTION](#DESCRIPTION)

This utility procedure determines whether a string matches a given pattern. If it does, then **Tcl\_StringMatch** returns 1. Otherwise **Tcl\_StringMatch** returns 0. The algorithm used for matching is the same algorithm used in the **string match** Tcl command and is similar to the algorithm used by the C-shell for file name matching; see the Tcl manual entry for details.

In **Tcl\_StringCaseMatch**, the algorithm is the same, but you have the option to make the matching case-insensitive. If you choose this (by passing **TCL\_MATCH\_NOCASE**), then the string and pattern are essentially matched in the lower case.

# [KEYWORDS](#KEYWORDS)

match, pattern, string

8.5 Tcl

---

Document: Tcl_StringCaseMatch(3) from tcl 9.1.0-r2 (Chainguard OS)
Source: https://downloads.sourceforge.net/project/tcl/Tcl/9.1.0/tcl9.1.0-src.tar.gz
