Регулярное выражение для соответствия z1 или z2 в Ocaml - PullRequest
4 голосов
/ 04 декабря 2011

Как писать регулярные выражения в ocaml?

Как написать регулярное выражение для "z1" + "z2" (z1 или z2)?

Я пытался таким образом, но это дает мне ошибки.

let p = Str.regexp "("z1")|("z2")";;

1 Ответ

4 голосов
/ 04 декабря 2011

Если вы намерены сопоставить двойные кавычки в своем входе, вам следует их избежать:

"(\\"z1\\")\\|(\\"z2\\")"

И вы можете сократить чередование, используя z1|z2:

"(\\"z1\\|z2\\")"

В противном случае, еслидвойные кавычки не являются частью ввода, шаблон должен быть:

"(z1\\|z2)"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...