diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 1997-10-24 15:54:07 +0000 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 1997-10-24 15:54:07 +0000 |
commit | 56e001e1c4b07c45aa8e0d9ff4cbb085e8ac1bf8 (patch) | |
tree | 38db19ad695cfc911477581b49e5fe1139448fa4 /stdlib/string.ml | |
parent | 7de9d9776f1f2f9226e720355133e6a8731255d3 (diff) |
Array.iteri Array.mapi Array.fold_left Array.fold_right
String.index String.rindex
Filename: utiliser String.rindex
Genlex: erreur dans doc
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1741 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'stdlib/string.ml')
-rw-r--r-- | stdlib/string.ml | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/stdlib/string.ml b/stdlib/string.ml index be074fa10..0556b273e 100644 --- a/stdlib/string.ml +++ b/stdlib/string.ml @@ -136,3 +136,17 @@ let apply1 f s = let capitalize s = apply1 Char.uppercase s let uncapitalize s = apply1 Char.lowercase s + +let index s c = + let rec idx i = + if i >= String.length s then raise Not_found + else if s.[i] = c then i + else idx (i+1) + in idx 0 + +let rindex s c = + let rec idx i = + if i < 0 then raise Not_found + else if s.[i] = c then i + else idx (i-1) + in idx (String.length s - 1) |