正規表現の構文では、少数の文字が特殊構成要素であり、それ以外は通常の文字となります。通常の文字とは、その文字にのみ一致し、それ以外には一致しない単純な正規表現のことです。特殊文字は ‘.’、‘*’、‘+’、‘?’、‘[’、‘^’、‘$’、および ‘\’ であり、今後新たに特殊文字が定義されることはありません。文字 ‘]’ は、括弧式を閉じる場合に特殊となります(後述)。文字 ‘-’ は、括弧式の中では特殊となります。‘[:’ とバランスを取る ‘:]’ は、括弧式の中で文字クラスを囲みます。正規表現に現れるその他の文字は、その前に ‘\’ がない限り、通常の文字となります。
例えば、‘f’は特殊文字ではないため通常の文字であり、したがって‘f’は文字列‘f’にマッチし、それ以外の文字列にはマッチしない正規表現となります。(文字列‘fg’にはマッチしませんが、その文字列の一部にはマッチします。)同様に、‘o’は‘o’にのみマッチする正規表現です。
任意の2つの正規表現 a と b は連結できます。その結果得られる正規表現は、a がその文字列の先頭の任意の部分にマッチし、かつ b が文字列の残りの部分にマッチする場合に、その文字列にマッチします。
簡単な例として、正規表現 ‘f’ と ‘o’ を連結して正規表現 ‘fo’ を得ると、これは文字列 ‘fo’ にのみマッチします。まだまだ単純な例です。より強力な処理を行うには、特殊な正規表現構文のいずれかを使用する必要があります。