ADP
Programming Language ADP

Japanese

Sourceforge.net

SourceForge.JP

Loading

instrrev (部分文字列の逆向き検索)

形式
 instrrev( $src, $findstr, $start, $pos)
引数
  • $src: 文字列
  • $findstr: 検索文字列
  • $start: 開始位置(バイト)(省略可)
  • $pos: 結果(バイト)
完了時の動作
  • 文字列が見つかった場合:次の述語を実行に移ります。
  • 文字列が見つからなかった場合:バックトラックします。
バックトラック時の動作
  • 常にバックトラックします。前の述語にバックトラックします。
説明

$srcで指定された文字列から$findstrで指定された文字列を検索します。
instrと異なり、検索は文字列の終端から先頭に向かって行われます。
結果の位置は、$pos(バイト単位)に格納されます。検索開始位置を$start(バイト単位)で指定することもできます(指定された位置より前で検索します)。
みつからなかったらバックトラックします。


コード例 (lib/instrrev.p)
+t('This is a pen. I have the pen. I give you the pen.');
,t.instrrev('pen').prtn,next;
,prtn;
,t.instrrev('pen',30).prtn,next;
,prtn;
,t.instrrev('pen',10).prtn,next;

実行例
D:\sample\lib>adp instrrev.p
46
26
10

26
10

10


Powered by ADP.