正規検索関数

関数一覧

LXTRA LXTRA_LEN LXTRA_POS LXTRA_STR MAKEREG

正規検索関数

文字列に対する正規検索処理をサポートしている。 正規検索に関する文法はここ
文字列は一行と考えて処理する。 検索オプションは全てサポートされているわけではない。

LXTRA

bool LXTRA( str 正規表現文字列 , str 検索対象文字列 [ , num 開始位置 ] [ ; 実行式 ] )
正規検索を実行する。検索が成立すれば、真を返す。
開始位置は検索対象文字列の検索開始位置を文字単位で指定する。 省略すると0。 実行式は検索結果が真の場合にのみ実行する。 実行式の中では、LXTRA_STR関数を使用して、検索結果の 部分文字列等を参照できる。
正規表現文字列は、通常、必ず、文字列定数にする。 文字列定数が書かれていると事前に正規表現をコンパイルを行う。 この方法がもっとも望ましい。
正規表現文字列が、定数以外の場合には、文字列自体に、 コンパイルされたオブジェクトが格納されたものとして実行する。 コンパイルはMAKEREG関数を使用して行う。 不正な文字列が与えられた場合の動作は保証しない。
検索条件をダイナミックに変更したり、変数に保存するなどのための機能であるが、 この方法はコンパイルのタイミングをユーザーが指定できるので柔軟性がある反面、 危険である。

LXTRA_STR

str LXTRA_STR( num 文字列番号 )
LXTRA関数の中で用い、検索結果の部分文字列などを返す。
一致文字列 0
部分文字列 1 - 9
一致文字列より前の文字列 10
位置マークより後の文字列 11 - 19
一致した文字列より後の文字列 20

LXTRA_POS

num LXTRA_POS( num 位置番号 )
LXTRA関数の中で用い、部分文字列の位置などを見る
一致文字列の位置 0
部分文字列の位置 1 - 9
一致文字列の位置 10
位置マーク 11 - 19
一致文字列の次の位置 20

LXTRA_LEN

num LXTRA_LEN( num 文字列番号 )
LXTRA関数の中で用い、検索結果の部分文字列などを返す。
一致文字列の長さ 0
部分文字列の長さ 1 - 9

MAKEREG

str MAKEREG( str 正規表現 [ , num 条件 ] )
正規表現をコンパイルして結果を文字列として返す。
コンパイル結果は特殊なので、内容を変更してはならない。 実行にはLXTRA関数を用いる。
条件は残念ながらビットの組み合わせで指定する。
半角の大文字小文字を区別しない 1
全角の大文字小文字を区別しない 2
?をバウンダリモードに切替える4