StringLabelsこのページは最後に更新されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。 last mod. 2009-09-10 (木) 11:56:45
module StringLabels: sig end 文字列処理です。 val length : string -> int 与えられた文字列の長さ (文字数) を返します。 val get : string -> int -> char StringLabels.get s n は文字列 s の n 番目の文字を返します。 先頭文字は 0 番目、終端文字は StringLabels.length s - 1 番目になります。StringLabels.get s n と書く代わりに s.[n] と書くこともできます。 n が 0 から (StringLabels.length s - 1) までの範囲になかったら例外 Invalid_argument "index out of bounds"を発生します。 val set : string -> int -> char -> unit StringLabels.set s n c は文字列 s の n 番目の文字を c に書き換えます。 n が 0 から (StringLabels.length s - 1) までの範囲になかったら例外 Invalid_arguement "index out of bounds"を発生します。 StringLabels.set s n c と書く代わりに s.[n] <- c と書くこともできます。 val create : int -> string StringLabels.create nは長さnの文字列を新しく作って返します。初期状態で文字列がどのような文字を持っているかは不明です。 n < 0 または n > Sys.max_string_length である場合は例外 Invalid_argument を発生します。 val make : int -> char -> string StringLabels.make n c は長さ n の文字列を新しく作って返します。初期状態で文字列は c で埋められています。 n < 0 または n > Sys.max_string_length である場合は例外 Invalid_argument を発生します。 val copy : string -> string 与えられた文字列のコピーを作って返します。 val sub : string -> pos:int -> len:int -> string StringLabels.sub s start len は長さ len の文字列を新しく作って返します。この文字列は s の start 番目から start + len - 1 番目までの文字で構成された部分文字列です。 start と len が s の部分文字列指定として不正であった場合は例外 Invalid_argument を発生します。不正な場合とは、start < 0 または start + len > StringLabels.length s の場合です。 val fill : string -> pos:int -> len:int -> char -> unit StringLabels.fill s start len c は文字列 s の start 番目から start + len - 1 番目までの文字をすべて c に書き換えます。 start と len が s の部分文字列指定として不正であった場合は例外 Invalid_argument を発生します。 val blit : src:string -> src_pos:int -> dst:string -> dst_pos:int -> len:int -> unit StringLabels.blit src srcoff dst dstoff len は文字列 src の srcoff 番目から始まる len 文字を、文字列 dst の dstoff 番目へコピーします。src と dst は実体の同じ文字列で、コピー元とコピー先の範囲指定が重なっていても正常に動作します。 srcoff と len が src の部分文字列指定として不正であったり、dstoff と len が dst の部分文字列指定として不正であったりした場合は例外 Invalid_argument を発生します。 val concat : sep:string -> string list -> string StringLabels.concat sep sl は文字列のリスト sl を繋いで 1 つの文字列とします。それぞれの文字列と文字列の間にはセパレータ文字列 sep を挿入します。 val iter : f:(char -> unit) -> string -> unit StringLabels.iter f s は s の各文字を順に関数 f に適用します。f s.(0); f s.(1); ...; f s.(StringLabels.length s - 1); () と等価です。 val escaped : string -> string 引数の文字列をコピーして、Objective Caml の字句規則に従い特殊文字をエスケープして返します。引数の文字列が特殊文字を持たなかった場合はコピーではなく引数をそのまま返します。 val index : string -> char -> int StringLabels.index s c は文字列 s 中で文字 c が左端から探して最初に現れる位置を返します。 s 中から c が見つからなかった場合は例外 Not_found を発生します。 val rindex : string -> char -> int StringLabels.index s c は文字列 s 中で文字 c が右端から探して最初に現れる位置を返します。 s 中から c が見つからなかった場合は例外 Not_found を発生します。 val index_from : string -> int -> char -> int StringLabels.index と同じですが、探し始める位置を第二引数に指定できます。 StringLabels.index s c は StringLabels.index_from s 0 c と等価です。 val rindex_from : string -> int -> char -> int StringLabels.rindex と同じですが、探し始める位置を第二引数に指定できます。 StringLabels.rindex s c は StringLabels.rindex_from s (StringLabels.length s - 1) c と等価です。 val contains : string -> char -> bool StringLabels.contains s c は文字列 s 中に文字 c があるかどうか検査します。 val contains_from : string -> int -> char -> bool StringLabels.contains_from s start c は文字列 s の start 番目から終端までの間に文字 c があるかどうか検査します。start が s の位置指定として不正であった場合は例外 Invalid_argument を発生します。 val rcontains_from : string -> int -> char -> bool StringLabels.rcontains_from s stop c は文字列 s の先頭から stop 番目までの間に文字 c があるかどうか検査します。stop が s の位置指定として不正であった場合は例外 Invalid_argument を発生します。 val uppercase : string -> string 引数の文字列をコピーして、小文字 (ISO Latin-1 (8859-1) 文字集合のアクセント付き文字も含む) をすべて大文字に変換して返します。 val lowercase : string -> string 引数の文字列をコピーして、大文字 (ISO Latin-1 (8859-1) 文字集合のアクセント付き文字も含む) をすべて小文字に変換して返します。 val capitalize : string -> string 引数の文字列をコピーして、先頭文字を大文字にして返します。 val uncapitalize : string -> string 引数の文字列をコピーして、先頭文字を小文字にして返します。 type t = string string型へのエイリアスです。 val compare : t -> t -> int compareと同じ動作をする比較関数です。型tとcompare関数によって、StringモジュールをSet.MakeやMap.Makeファンクタに渡すことができます。 |