summaryrefslogtreecommitdiff
path: root/doc/API.ja
diff options
context:
space:
mode:
Diffstat (limited to 'doc/API.ja')
-rw-r--r--doc/API.ja152
1 files changed, 151 insertions, 1 deletions
diff --git a/doc/API.ja b/doc/API.ja
index 164d0b8..10ee1cd 100644
--- a/doc/API.ja
+++ b/doc/API.ja
@@ -1,4 +1,4 @@
-鬼車インターフェース Version 6.9.2 2019/03/29
+鬼車インターフェース Version 6.9.4 2019/09/30
#include <oniguruma.h>
@@ -167,6 +167,9 @@
# int onig_new_deluxe(regex_t** reg, const UChar* pattern, const UChar* pattern_end,
OnigCompileInfo* ci, OnigErrorInfo* einfo)
+ この関数は廃止予定。
+ パターンと対象文字列の文字エンコーディングが異なる場合を許さなくなった。
+
正規表現オブジェクト(regex)を作成する。
この関数は、onig_new()のデラックス版。
@@ -298,6 +301,7 @@
const UChar* range, OnigRegion* region, OnigOptionType option)
正規表現で文字列を検索し、検索結果とマッチ領域を返す。
+ 正規表現オブジェクトの文字エンコーディングで、検索文字列として不正な文字列を渡してはいけない。
正常終了戻り値: マッチ位置 (p - str >= 0)
検索失敗: ONIG_MISMATCH (< 0)
@@ -322,6 +326,9 @@
const UChar* start, const UChar* range, OnigRegion* region,
OnigOptionType option, OnigMatchParam* mp)
+ 正規表現で文字列を検索し、検索結果とマッチ領域を返す。
+ 正規表現オブジェクトの文字エンコーディングで、検索文字列として不正な文字列を渡してはいけない。
+
引数
1-7: onig_search()と同じ
8 mp: マッチパラメタ値 (match_stack_limit, retry_limit_in_match)
@@ -331,6 +338,7 @@
const UChar* at, OnigRegion* region, OnigOptionType option)
文字列の指定位置でマッチングを行い、結果とマッチ領域を返す。
+ 正規表現オブジェクトの文字エンコーディングで、検索文字列として不正な文字列を渡してはいけない。
正常終了戻り値: マッチしたバイト長 (>= 0)
not match: ONIG_MISMATCH ( < 0)
@@ -352,6 +360,9 @@
const UChar* at, OnigRegion* region,
OnigOptionType option, OnigMatchParam* mp)
+ 文字列の指定位置でマッチングを行い、結果とマッチ領域を返す。
+ 正規表現オブジェクトの文字エンコーディングで、検索文字列として不正な文字列を渡してはいけない。
+
引数
1-6: onig_match()と同じ
7 mp: マッチパラメタ値 (match_stack_limit, retry_limit_in_match)
@@ -363,6 +374,7 @@
void* callback_arg)
正規表現で文字列をスキャンして、マッチングする毎にコールバック関数を呼び出す。
+ 正規表現オブジェクトの文字エンコーディングで、検索文字列として不正な文字列を渡してはいけない。
正常終了: マッチ回数 (0回も含める)
エラー: エラーコード (< 0)
@@ -378,6 +390,138 @@
7 callback_arg: コールバック関数に渡される付加引数値
+# int onig_regset_new(OnigRegSet** rset, int n, regex_t* regs[])
+
+ regsetオブジェクトを生成する。
+ 全ての正規表現オブジェクトは、同じ文字エンコーディングでなければならない。
+ 全ての正規表現オブジェクトは、ONIG_OPTION_FIND_LONGESTオプションでコンパイルされていてはならない。
+
+ 引数
+ 1 rset: regsetオブジェクトを返すためのアドレス
+ 2 n: 正規表現の個数
+ 3 regs: 正規表現オブジェクトの配列
+
+ 正常終了戻り値: ONIG_NORMAL
+
+
+# int onig_regset_add(OnigRegSet* set, regex_t* reg)
+
+ regsetオブジェクトに正規表現を追加する。
+ 正規表現オブジェクトは、regsetと同じ文字エンコーディングでなければならない。
+ 正規表現オブジェクトは、ONIG_OPTION_FIND_LONGESTオプションでコンパイルされていてはならない。
+
+ 引数
+ 1 set: regsetオブジェクト
+ 2 reg: 正規表現オブジェクト
+
+ 正常終了戻り値: ONIG_NORMAL
+
+
+# int onig_regset_replace(OnigRegSet* set, int at, regex_t* reg)
+
+ regsetの中の一個の正規表現オブジェクトを別のものに変更する。
+ 若しreg引数の値がNULLであれば、at番目の正規表現オブジェクトを外す。(そして、以降の正規表現オブジェクトのインデックスは変化する)
+
+ 引数
+ 1 set: regsetオブジェクト
+ 2 at: 変更する場所のインデックス
+ 2 reg: 正規表現オブジェクト
+
+ 正常終了戻り値: ONIG_NORMAL
+
+
+# void onig_regset_free(OnigRegSet* set)
+
+ regsetオブジェクトとその中の正規表現オブジェクトの使用メモリを開放する。
+ 若し、同一の正規表現オブジェクトを重複して登録していれば、破壊的な状況になる。
+
+ 引数
+ 1 set: regsetオブジェクト
+
+
+# int onig_regset_number_of_regex(OnigRegSet* set)
+
+ regsetの中の正規表現オブジェクトの個数を返す。
+
+ 引数
+ 1 set: regsetオブジェクト
+
+
+# regex_t* onig_regset_get_regex(OnigRegSet* set, int at)
+
+ regsetのat番目の正規表現を返す。
+
+ 引数
+ 1 set: regsetオブジェクト
+ 2 at: 正規表現オブジェクトのインデックス (ゼロ開始)
+
+
+# OnigRegion* onig_regset_get_region(OnigRegSet* set, int at)
+
+ regsetのat番目の正規表現に対応する領域を返す。
+
+ 引数
+ 1 set: regsetオブジェクト
+ 2 at: 正規表現オブジェクトのインデックス (ゼロ開始)
+
+
+# int onig_regset_search(OnigRegSet* set, const OnigUChar* str, const OnigUChar* end, const OnigUChar* start, const OnigUChar* range, OnigRegSetLead lead, OnigOptionType option, int* rmatch_pos)
+
+ regsetによる検索を実行する。
+
+ 戻り値:
+ 検索成功: マッチした正規表現オブジェクトのインデックス (ゼロ開始)
+ 検索失敗: ONIG_MISMATCH (< 0)
+ エラー: エラーコード (< 0)
+
+ 引数
+ 1 set: regsetオブジェクト
+ 2 str: 検索対象文字列
+ 3 end: 検索対象文字列の終端アドレス
+ 4 start: 検索対象文字列の検索先頭位置アドレス
+ 5 range: 検索対象文字列の検索終了位置アドレス
+ (start <= 探索される文字列 < range)
+ 6 lead: 外側のループ要素
+ ONIG_REGSET_POSITION_LEAD (最左位置でマッチした結果を返す)
+ ONIG_REGSET_REGEX_LEAD (最左位置でマッチした結果を返す)
+ ONIG_REGSET_PRIORITY_TO_REGEX_ORDER (最初にマッチした正規表現の結果を返す)
+ 7 option: 検索時オプション
+ ONIG_OPTION_NOTBOL 文字列の先頭(str)を行頭と看做さない
+ ONIG_OPTION_NOTEOL 文字列の終端(end)を行末と看做さない
+ 8 rmatch_pos: マッチした位置を返すためのアドレス (match_address - str)
+
+ * ONIG_REGSET_POSITION_LEADとONIG_REGSET_REGEX_LEADは同じ結果を返す。
+ これらの違いは検索時間にしか現れない。
+ ほとんどの場合、ONIG_REGSET_POSITION_LEADのほうが速いと思われる。
+
+
+# int onig_regset_search_with_param(OnigRegSet* set, const OnigUChar* str, const OnigUChar* end, const OnigUChar* start, const OnigUChar* range, OnigRegSetLead lead, OnigOptionType option, OnigMatchParam* mps[], int* rmatch_pos)
+
+ regsetとOnigMatchParamオブジェクトによる検索を実行する。
+
+ 戻り値:
+ 検索成功: マッチした正規表現オブジェクトのインデックス (ゼロ開始)
+ 検索失敗: ONIG_MISMATCH (< 0)
+ エラー: エラーコード (< 0)
+
+ 引数
+ 1 set: regsetオブジェクト
+ 2 str: 検索対象文字列
+ 3 end: 検索対象文字列の終端アドレス
+ 4 start: 検索対象文字列の検索先頭位置アドレス
+ 5 range: 検索対象文字列の検索終了位置アドレス
+ (start <= 探索される文字列 < range)
+ 6 lead: 外側のループ要素
+ ONIG_REGSET_POSITION_LEAD (最左位置でマッチした結果を返す)
+ ONIG_REGSET_REGEX_LEAD (最左位置でマッチした結果を返す)
+ ONIG_REGSET_PRIORITY_TO_REGEX_ORDER (最初にマッチした正規表現の結果を返す)
+ 7 option: 検索時オプション
+ ONIG_OPTION_NOTBOL 文字列の先頭(str)を行頭と看做さない
+ ONIG_OPTION_NOTEOL 文字列の終端(end)を行末と看做さない
+ 8 mps: OnigMatchParamオブジェクトの配列
+ 9 rmatch_pos: マッチした位置を返すためのアドレス (match_address - str)
+
+
# OnigRegion* onig_region_new(void)
マッチ領域情報(region)を作成する。
@@ -616,14 +760,20 @@
# int onigenc_strlen(OnigEncoding enc, const UChar* s, const UChar* end)
+
+ 文字列の文字数を返す。
+
+
# int onigenc_strlen_null(OnigEncoding enc, const UChar* s)
文字列の文字数を返す。
+ 文字エンコーディングに対して、不正な文字列を渡してはいけない。
# int onigenc_str_bytelen_null(OnigEncoding enc, const UChar* s)
文字列のバイト数を返す。
+ 文字エンコーディングに対して、不正な文字列を渡してはいけない。
# int onig_set_default_syntax(OnigSyntaxType* syntax)