Vl-string-position

提供:GizmoLabs - だいたい CAD LISP なサイト
2018年11月7日 (水) 22:16時点におけるGizmon (トーク | 投稿記録)による版
構文
(vl-string-position char-codestr [start-pos [from‑end‑p]])


機能
文字列内の指定された ASCII コードの文字を検索する。
引数
  • char-code : 検索する文字を表す整数。
  • str : 検索される文字列。
  • start-pos : 文字列内の検索開始位置(先頭の文字は 0)。省略した場合は 0(ゼロ)。
  • from-end-p : この引数に T を指定した場合、文字列の終端から検索が開始され、pos まで逆方向に検索される。
戻り値
見つかった char-code に対応する文字の、文字列の先頭からの位置を表す整数、文字が見つからなかった場合は nil。


サンプル

<syntaxhighlight lang="lisp" line> (vl-string-position (ascii "z") "azbdc") 1

(vl-string-position 122 "azbzc") 1 (vl-string-position (ascii "x") "azbzc") nil

次の例では、検索対象の文字列内に 2 つの "z" が存在する。 先頭の文字の位置を 0(ゼロ)として左から右に数えると、一方の「z」の位置は 1、他方の z の位置は 3 。

(vl-string-position (ascii "z") "azbzlmnqc") 1

左から右に検索(既定値)すると、vl-string-position 関数は、位置 1 の "z" を最初に検出する。 しかし、次の例のように右から左に検索すると、位置 3 の "z" が最初に検出される。

(vl-string-position (ascii "z") "azbzlmnqc" nil t) 3 </syntaxhighlight>