Tôi muốn sử dụng regexps trong OCaml và có vẻ như mô-đun Str
cung cấp các chức năng này.Cụm từ thông dụng trong OCaml
Vì vậy, tôi cố gắng với một chương trình đơn giản:
open Str
let regx = regexp "."
nhưng nó mang lại cho tôi những lỗi sau
File "lol.ml", line 1, characters 0-1: Error: Error while linking lol.cmo: Reference to undefined global `Str'
Như nếu module không có mặt nhưng nếu tôi loại bỏ open Str
nó nói rằng regexp
là một giá trị không liên kết.
Tôi không gặp vấn đề gì, Str
phải là mô-đun chuẩn (theo http://caml.inria.fr/pub/docs/old-311/libref/Str.html) vì vậy tôi không biết gì cả. Tôi nghĩ là chữ ký đó (mli
) hiện diện nhưng thực hiện (ml
) thì không.
Tôi đang chạy Objective Caml version 3.11.0
theo công cụ ocaml
.
Có ai có thể giúp tôi tìm ra điều này không? Cảm ơn trước
Nếu bạn có thể tránh nó, bạn * thực sự * don không muốn sử dụng mô-đun 'Str'. API của nó không phải là reentrant, dẫn đến tất cả các cách thức của các vấn đề. May mắn thay, PCRE có các ràng buộc OCaml tốt tại: http://www.ocaml.info/home/ocaml_sources.html Bạn cũng có thể muốn kiểm tra Mikmatch để hỗ trợ cú pháp trên đầu PCRE engine. –