Module Regexp

module Regexp: sig .. end
Types for regexps.


Warning: the regexp syntax is the javascript one. It differs from the syntax used by the Str module from the OCaml standard library.
type regexp 
The type for regexps.
type result 
The type for match result.

Constructors
val regexp : string -> regexp
Simple regexp constructor.
val regexp_with_flag : string -> string -> regexp
Regexp constructor with flag that allow for global or case-insensitive search.
val quote : string -> string
Escapes characters with special meaning in the regexp context.
val regexp_string : string -> regexp
regexp_string s creates a regexp matching the exact string s.

Functions
val string_match : regexp -> string -> int -> result option
string_match r s i matches the string s starting from the ith character. Evaluates to None if s (from the ith character) doesn't match r.
val search : regexp -> string -> int -> (int * result) option
search r s i evaluates to the index of the match and the match result or None if s (starting from i) doesn't match r.
val matched_string : result -> string
matched_string r return the exact substring that matched when evaluating r.
val matched_group : result -> int -> string option
matched_group r i is the ith group matched. Groups in matches are * obtained with parentheses. Groups are 1-based.
val global_replace : regexp -> string -> string -> string
global_replace r s by replaces all of the matches of r in s by by.
val replace_first : regexp -> string -> string -> string
replace_first r s by replaces the first match of r in s by by.
val split : regexp -> string -> string list
split r s splits the string s erasing matches with r. split (regexp " ") "toto tutu tata" is ["toto";"tutu";"tata"].
val bounded_split : regexp -> string -> int -> string list
bounded_split r s i is like split r s except that the result's length is less than i.