package oniguruma

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Bindings to K.Kosako's Oniguruma library. Also see the Oniguruma API documentation.

type _ t

A regular expression. The phantom type parameter indicates the encoding, so that regular expressions for different encodings may not be mixed.

exception Error of string

The exception raised upon Oniguruma errors.

module Encoding : sig ... end

Character encodings.

module Options : sig ... end

Regex options.

module Syntax : sig ... end

The syntax type.

module Region : sig ... end

Match results.

val create : string -> Options.compile_time Options.t -> 'enc Encoding.t -> Syntax.t -> ('enc t, string) Stdlib.result

create pattern options encoding syntax creates a regex.

search regex string start range option searches String.sub string start range for regex. Raises Error if there is an error (other than a mismatch).

  • parameter regex

    The pattern to search for

  • parameter string

    The string to search

  • parameter start

    The string position to start searching from, as a byte offset

  • parameter range

    The string position to stop searching at, as a byte offset

  • parameter option

    Search options

val match_ : 'enc t -> string -> int -> Options.search_time Options.t -> Region.t option

match_ regex string pos options matches regex against string at position pos. Raises Error if there is an error (other than a mismatch).

  • parameter regex

    The pattern to match

  • parameter string

    The string to match against

  • parameter pos

    The position of the string to match at, as a byte offset

  • parameter options

    Match options

val num_captures : _ t -> int

The number of capture groups in the regex. The entire match itself does not count as a capture group.

val name_to_group_numbers : _ t -> string -> int array

name_to_group_numbers regex name is the group number array of name in regex.

val version : string

The Oniguruma version string. This is the version of the underlying C library, not this OCaml binding library.

OCaml

Innovation. Community. Security.