「Vl-string-position」の版間の差分

提供:GizmoLabs - だいたい CAD LISP なサイト
編集の要約なし
編集の要約なし
7行目: 7行目:
; 機能
; 機能
: 文字列内の指定された ASCII コードの文字を検索する。
: 文字列内の指定された ASCII コードの文字を検索する。


; 引数
; 引数
13行目: 14行目:
:* start-pos : 文字列内の検索開始位置(先頭の文字は 0)。省略した場合は 0(ゼロ)。
:* start-pos : 文字列内の検索開始位置(先頭の文字は 0)。省略した場合は 0(ゼロ)。
:* from-end-p : この引数に T を指定した場合、文字列の終端から検索が開始され、pos まで逆方向に検索される。
:* from-end-p : この引数に T を指定した場合、文字列の終端から検索が開始され、pos まで逆方向に検索される。


; 戻り値
; 戻り値

2019年6月30日 (日) 09:44時点における版

構文
(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>