Wildcards, also called “Pathname Matching Notation”, describe sets of file names.
When this module is present, *FEATURES*
contains the symbol :WILDCARD
.
The “WILDCARD” package exports the following two symbols:
(WILDCARD:MATCH
. This function returns a non-pattern
string
&KEY
:START
:END
:case-insensitive)NIL
value if the string
matches
the pattern
.
(WILDCARD:WILDCARD-MATCHER
. This function is a valid value for pattern
)CUSTOM:*APROPOS-MATCHER*
.
string
]STRING
string
.
This is called a “character class”.
As a shorthand, string
may contain ranges, which consist of two
characters with a dash between them.
For example, the class [a-z0-9_]
matches a lowercase letter, a number, or an underscore.
You can negate a class by placing a #\!
or #\^ immediately after the opening bracket.
Thus, [^A-Z@]
matches any character
except an uppercase letter or an at sign.
Slash characters have no special significance in the
wildcard matching, unlike in the shell (/bin/sh),
in which wildcards do not match them.
Therefore, a pattern foo*bar
can match a file name foo3/bar
,
and a pattern ./sr*sc
can match a file name ./src/misc
.
These notes document CLISP version 2.49 | Last modified: 2010-07-07 |