2.5 ワイルドカード表現

文字列の中にワイルドカードが許される場合を "マスク" と呼びます。

文字列のマッチングのために、プロトコルは二つの特殊文字を使うことができます。?%x3F)は一文字だけにマッチし、*%x2A)は任意の数の任意の文字にマッチすます。これらの2つの文字は、second%x5C)という文字を使ってエスケープすることができます。

これを表す拡張 BNF 構文は以下の通りです。

mask = *( nowild / noesc wildone / noesc wildmany ) wildone = %x3F wildmany = %x2A nowild = %x01-29 / %x2B-3E / %x40-FF ; NUL, "*", "?" 以外の任意のオクテット。 noesc = %x01-5B / %x5D-FF ; NUL と "\" 以外の任意のオクテット。 matchone = %x01-FF ; matches wildone matchmany = *matchone ; matches wildmany Examples: a?c ; "a" で始まり "c" で終わる3文字以内の文字列に一致する。 a*c ; "a" で始まり "c" で終わる2文字以上の文字列と一致する。