正規表現(略してregexp)とは、(場合によっては無限の)文字列集合を表すパターンのことです。regexpを用いて一致する文字列を検索することは、非常に強力な操作です。本節ではregexpの書き方について説明し、次節ではそれらの検索方法について解説します。
正規表現のインタラクティブな開発には、M-x re-builder コマンドを使用できます。このコマンドは、別バッファで即座に視覚的なフィードバックを提供することで、正規表現作成のための便利なインターフェースを実現します。正規表現を編集すると、対象バッファ内のすべてのマッチ箇所がハイライトされます。正規表現の括弧で囲まれた各部分式はそれぞれ異なるフェイスで表示されるため、非常に複雑な正規表現であっても確認が容易になります。
なお、デフォルトではEmacsの検索は大文字小文字を区別しません(検索と大文字小文字を参照)。大文字小文字を区別する正規表現による検索およびマッチングを有効にするには、大文字小文字を区別したいコードの前後で
case-fold-search を nil
にバインドしてください。