FNMATCH(3) | Library Functions Manual | FNMATCH(3) |
fnmatch
— match
filename or pathname using shell globbing rules
#include
<fnmatch.h>
int
fnmatch
(const
char *pattern, const char
*string, int
flags);
The
fnmatch
()
function matches patterns according to the globbing rules used by the shell.
It checks the string specified by the string argument
to see if it matches the pattern specified by the
pattern argument.
The flags argument modifies the
interpretation of pattern and
string. The value of flags is
the bitwise inclusive OR of any of the following constants, which are
defined in the include file
<fnmatch.h>
.
FNM_NOESCAPE
FNM_NOESCAPE
flag is set, a backslash
character is treated as an ordinary character.FNM_PATHNAME
FNM_PERIOD
FNM_PATHNAME
. A period is always leading if it is
the first character in string. Additionally, if
FNM_PATHNAME
is set, a period is leading if it
immediately follows a slash.FNM_LEADING_DIR
FNM_CASEFOLD
The fnmatch
() function returns zero if
string matches the pattern specified by
pattern, otherwise, it returns the value
FNM_NOMATCH
.
The fnmatch
() function conforms to
IEEE Std 1003.2-1992 (“POSIX.2”) and
X/Open Portability Guide Issue 4, Version 2
(“XPG4.2”).
Note, however, that the flags
FNM_LEADING_DIR
and
FNM_CASEFOLD
are extensions and should not be used
by applications striving for strict standards conformance.
A predecessor to fnmatch
(),
gmatch
(), first appeared in the Programmer's
Workbench (PWB/UNIX). The fnmatch
() function first
appeared in 4.4BSD.
The pattern ‘*
’ matches the
empty string, even if FNM_PATHNAME
is specified.
January 21, 2014 | OpenBSD-6.5 |