GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/eintr/Regexp-Review.html ・ emacs-doc.conao3.com

12.5 復習

最近導入されたいくつかの関数について、簡単にまとめます。

while

式の本体の第1要素が真と判定される限り、本体を繰り返し評価する。その後、nilを返す。(式は副作用についてのみ評価される。)

例えば:

(let ((foo 2))
  (while (> foo 0)
    (insert (format "foo is %d.\n" foo))
    (setq foo (1- foo))))

     ⇒      foo is 2.
             foo is 1.
             nil

(insert 関数は引数をポイントに挿入し、format 関数は message が引数をフォーマットするのと同様の方法で引数をフォーマットした文字列を返し、\n は改行を出力します。)

re-search-forward

パターンを検索し、パターンが見つかった場合は、その直後の休止点にポイントを移動させる。

search-forwardのように、4つの引数を取ります:

  1. 検索するパターンを指定する正規表現。 (この引数をクォートで囲むのを忘れずに!)
  2. 任意で、検索の上限。
  3. 任意で、検索に失敗した場合にどうするか。nil またはエラーメッセージを返す。
  4. 任意で検索を繰り返す回数を指定します。負の値の場合、検索は逆方向に行われます。
let*

一部の変数を特定の値にローカルに束縛し、残りの引数を評価して、最後の引数の値を返します。ローカル変数を束縛する際は、先に束縛された変数のローカル値があれば、それを利用してください。

例えば:

(let* ((foo 7)
       (bar (* 3 foo)))
  (message "`bar' is %d." bar))
     ⇒ ‘bar’ is 21.
match-beginning

直前の正規表現検索で見つかったテキストの開始位置を返します。

looking-at

ポイント以降のテキストが、正規表現であるはずの引数と一致する場合、true なら t を返します。

eobp

ポイントがバッファのアクセス可能領域の末尾にある場合、true なら t を返します。アクセス可能領域の末尾は、バッファが狭められていない場合はバッファの末尾であり、狭められている場合は狭められた領域の末尾となります。