ソフトウェアにおいて、ワイルドカード文字は、アスタリスク(* )などの単一の文字で表されるプレースホルダーの一種であり、複数のリテラル文字または空の文字列として解釈できます。ファイル検索でよく使用され、ファイル名をフルネームで入力する必要がなくなります。[ 1 ]*
電気通信において、ワイルドカードとは、定義済みのすべての文字のサブセットのいずれかに置き換えることができる文字のことである。
?36個の大文字英数字のいずれかに置き換えることができます。コンピュータ(ソフトウェア)技術において、ワイルドカードとは、0 文字以上の文字を置き換えたり表現したりするために使用される記号です。[ 2 ]ワイルドカードを照合するためのアルゴリズムは、再帰的および非再帰的なさまざまな種類で開発されています。 [ 3 ]
CP/M、Atari DOS、MS-DOS、Windows、およびUnix系オペレーティングシステムでファイル名(またはパス)を指定する場合、アスタリスク文字(*、別名「スター」)は0個以上の文字に一致します。たとえば、は と にdoc*一致しますが、には一致しません。ファイル名に日付スタンプが付いている場合は、ワイルドカードを使用して日付範囲に一致させることができます。たとえば、docと指定すると、 2026年7月のビデオ録画を選択でき、ファイルのコピーや移動などの操作が容易になります。documentdodo202607*.mp4
Unix系オペレーティングシステム、MS-DOS、およびAtari DOSでは、疑問符は?正確に1文字に一致します。MS-DOSでは、疑問符が単語の末尾にある場合、末尾に欠落した(ゼロ)文字にも一致します。たとえば、パターンはと に123?一致しますが、 には一致しません。123123412345
Unix シェルおよびWindows PowerShellでは、角括弧([と)で囲まれた文字範囲は、]その範囲内の単一の文字に一致します。たとえば、 は[A-Za-z]任意の大文字または小文字の単一の文字に一致します。Unix シェルでは、先頭に感嘆符 (!) を付けると!、範囲が否定され、リストに含まれていない文字のみに一致します。!履歴置換として解釈されるシェルでは、^代わりに先頭にキャレット (^) を使用できます。
ワイルドカードパターンを複数のファイル名またはパス名に一致させる操作は、グロビングと呼ばれます。
SQLでは、LIKE 式でワイルドカード文字を使用できます。パーセント記号は%0 個以上の文字に一致し、アンダースコアは1 文字に一致します。Transact -SQLでは、角括弧(と) を使用して一致させる文字のセットと範囲を指定することもできます。先頭のキャレットはセットを否定し、リストに含まれていない文字のみに一致します。Microsoft Accessでは、アスタリスク記号は0 個以上の文字に一致し、疑問符は1 文字に一致し、数字記号は1 桁の数字 (0 ~ 9) に一致し、角括弧は一致させる文字のセットまたは範囲に使用できます。_[]^*?#
正規表現では、ピリオド(.、別名「ドット」)は任意の1文字に一致するワイルドカードパターンです。これにクリーネスター演算子(アスタリスク( )で表される)を付けることにより*、 となり.*、これは0個以上の任意の文字に一致します。
ワイルドカード演算子は、Google検索でフレーズ間に1つ以上の単語が挿入された結果を取得するために使用できます。たとえば、「I love * so much」をGoogleで検索すると、「I love this game so much」、「I love my wife so much」などの結果が表示されます。[ 4 ]
JavaやRustなどの一部の言語では、アスタリスクを使用して名前空間内のすべてのシンボルを修飾できます(「グロブインポート」または「ワイルドカードインポート」と呼ばれることもあります)。たとえば、Javaでは、パッケージ内のすべてのパブリッククラスがスコープに追加され、Rustでは、モジュール内のすべてのパブリックシンボルがスコープに追加されます。importjava.util.*;java.utilusestd::collections::*;std::collections
一部のプログラミング言語では、型パラメータにワイルドカードを使用することがあり、これはジェネリック型における型パラメータの型安全性を制御するために使用されます。
?(例えば)で表されます。[ 5 ]List<?>*(例)で表されます。List<*>?(例: )。Scala 2 では、文字が型ワイルドカードを表すために使用されていました (例: )。[ 6 ]List[?]_List[_]Rustでは、汎用型パラメータは、コンパイラが解釈できるように指定せずに残しておくことができ_、これを「推論型」と呼びます(例:)。[ 7 ]Vec<_>