Previous: List Motion, Up: Motion [Contents][Index]
以下の2つの関数は、指定された文字セットを超えてポイントを移動します。これらの関数は、たとえば空白文字をスキップするためによく使用されます。関連する関数については、Motion and Syntaxを参照してください。
これらの関数は検索関数(Searching and Matchingを参照)が行うように、そのバッファーがマルチバイト(multibyte)ならマルチバイトに、ユニバイト(unibyte)ならユニバイトに、そのセットト文字列を変換します。
この関数は、与えられた文字セットをスキップして、カレントバッファー内のポイント前方に移動する。これはポイントの後の文字を調べて、その文字がcharacter-setにマッチすればポイントを進める。そして、マッチしない文字に到達するまで、これを継続する。この関数は、超えて移動した文字数をリターンする。
引数character-setが、正規表現での‘[…]’内部と同様だが、‘]’で終端されず、‘\’が‘^’、‘-’、‘\’をクォートする点が異なる。つまり、"a-zA-Z"
はすべての英字をスキップして最初の非英字の前で停止し、"^a-zA-Z"
はすべての非英字をスキップして最初の英字の前で停止する。Regular Expressionsを参照のこと。"[:alnum:]"
のような文字クラスも使用できる。see Char Classesを参照されたい。
limit(数字かマーカー)が与えられた場合、それはポイントがスキップして到達できる、そのバッファー内の最大位置を指定する。ポイントはlimit、またはlimitの前でストップするだろう。
以下の例では、ポイントは最初‘T’の直前に置かれている。フォーム評価後、ポイントはその行の末尾(‘hat’の‘t’と改行の間)に置かれる。この関数は、すべての英字とスペースをスキップするが、改行はスキップしない。
---------- Buffer: foo ---------- I read "∗The cat in the hat comes back" twice. ---------- Buffer: foo ----------
(skip-chars-forward "a-zA-Z ") ⇒ 18 ---------- Buffer: foo ---------- I read "The cat in the hat∗ comes back" twice. ---------- Buffer: foo ----------
この関数は、limitに至るまでcharacter-setにマッチする文字をスキップして、ポイントを後方に移動する。これはskip-chars-forward
と同様だが、ポイントを移動する方向が異なる。
リターン値は、移動した距離を示す。これは、0以上の整数である。