コンピュータなどの関連において、ワイルドカードは、検索などグロブの際に指定するパターンに使用する特殊文字の種類で、どんな対象文字、ないし文字列にもマッチするもののことである。カードゲームのワイルドカードに由来する呼称。
UNIXのシェルでは、「?
」(疑問符)を任意の一文字、「*
」(アスタリスク)を長さ0文字以上の任意の文字列にマッチするパターンとして、コマンドライン上で、存在するファイルの名前に対して展開される。
たとえば sales-201712.xlsx
、sales-201801.txt
、sales-201802.txt
というファイルがある場合、
vi sales-2018*.txt
コマンドを入力すると、
vi sales-201801.txt sales-201802.txt
のように展開されたうえで、vi
プログラムが起動される。
MS-DOSやその衣鉢を継いだMicrosoft Windowsのシェルプログラム COMMAND.COM
ではこのような展開を行わず、ワイルドカードはプログラムのプロセスにそのまま渡される。COMMAND.COM
の内部コマンドにおける解釈では、ファイル名の途中で *
があると、そこから拡張子のピリオドまでマッチをすっ飛ばし、全てマッチしたものとみなすので、FOO*BAR
というパターンは FOO*
と全く同じ意味である。また、REN *.TXT *.BAK
といったようなコマンドに対してはDWIM(英語版)的な挙動をする。
SQLの WHERE
句における LIKE predicate
中のパターンでは、長さ0文字以上の任意の文字列が「%
」、任意の一文字が「_
」である。
正規表現におけるクリーネ閉包とは似て非なるものであり混同してはいけない。
関連項目