Chcę użyć wyrażeń regularnych w OCaml i wygląda na to, że moduł Str
zapewnia te funkcje.Wyrażenia regularne w OCaml
Więc próbowałem za pomocą prostego programu:
open Str
let regx = regexp "."
ale daje mi następujący błąd
File "lol.ml", line 1, characters 0-1: Error: Error while linking lol.cmo: Reference to undefined global `Str'
Jakby moduł nie jest obecny, ale jeśli usunąć open Str
mówi, że regexp
jest wartość niezwiązana.
Nie rozumiem, jaki rodzaj problemu jest to, Str
powinien być standardowym module (według http://caml.inria.fr/pub/docs/old-311/libref/Str.html), więc jestem pojęcia .. tylko że ja myślałem, że podpis (mli
) jest obecny, ale realizacja (ml
) nie jest.
Używam Objective Caml version 3.11.0
według narzędzia ocaml
.
Czy ktoś może mi pomóc w ustaleniu tego? góry dzięki
Jeśli można go uniknąć, to * bardzo * don nie chcesz używać modułu 'Str'. Jego interfejs API nie jest stały, co prowadzi do wielu problemów. Na szczęście PCRE ma dobre powiązania OCaml na: http://www.ocaml.info/home/ocaml_sources.html Możesz również sprawdzić Mikmatch pod kątem obsługi składni w górnej części silnika PCRE. –