疑問符(?)
疑問符(?)は、直前の文字が 1 回だけ出現する、または 1 回も出現しない場合に一致します。
たとえば、10? は次と一致します。
- 1
- 10
最後のセクションに 1 桁か 2 桁の数字がある IP アドレスと一致します。
たとえば、216\.239\.32\.\d\d? は次と一致します。
- 216.239.32.2
- 216.239.32.34
この例で使用されているバックスラッシュは小数点をエスケープし、\d は任意の数字と一致します。
プラス記号(+)
プラス記号(+)は、直前の文字が 1 回以上繰り返す場合に一致します。
たとえば、10+ は次と一致します。
- 10
- 100
- 1000
- 以下同様
最後のセクションに 1 桁以上の数字がある IP アドレスと一致します。
たとえば、216\.239\.32\.\d+ は次と一致します。
- 216.239.32.2
- 216.239.32.34
- 216.239.32.567
この例で使用されているバックスラッシュは小数点をエスケープし、\d は任意の数字と一致します。
アスタリスク(*)
文字の後のアスタリスクは、直前の文字が 0 回以上繰り返される場合に一致します。
たとえば、10* は次と一致します。
- 1
- 10
- 100
- 1000
- 以下同様
最後のセクションに 1 桁以上の数字がある IP アドレスと一致します。
たとえば、216\.239\.32\.\d* は次と一致します。
- 216.239.32.2
- 216.239.32.34
- 216.239.32.567
この例で使用されているバックスラッシュは小数点をエスケープし、\d は任意の数字と一致します。
直前の項目以外も一致する必要がある場合は、アスタリスクとドット(.*)を組み合わせます。ドットは直前の任意の項目と一致し、アスタリスクはその項目を 0 回以上繰り返します。この組み合わせを使うと、行頭と行末に同じ文字を含むすべての文字列(URI など)に一致します。行頭と行末の間に文字が何文字あってもかまいません。たとえば、/mens/.*html は次と一致します。
- /mens/shirts/oxford.html
- /mens/shirts/oxford/shortsleeve.html