Mercurial > urweb
diff lib/ur/string.ur @ 1390:65fbb250b875
More string processing
author | Adam Chlipala <adam@chlipala.net> |
---|---|
date | Thu, 13 Jan 2011 10:02:50 -0500 |
parents | 9a721f0722d3 |
children | 2da693675de9 |
line wrap: on
line diff
--- a/lib/ur/string.ur Tue Jan 11 18:04:52 2011 -0500 +++ b/lib/ur/string.ur Thu Jan 13 10:02:50 2011 -0500 @@ -10,6 +10,7 @@ val suffix = Basis.strsuffix val index = Basis.strindex +fun sindex r = Basis.strsindex r.Haystack r.Needle val atFirst = Basis.strchr fun mindex {Haystack = s, Needle = chs} = @@ -50,6 +51,12 @@ sub s i, suffix s (i + 1)) +fun ssplit r = + case sindex r of + None => None + | Some i => Some (substring r.Haystack {Start = 0, Len = i}, + suffix r.Haystack (i + length r.Needle)) + fun all f s = let val len = length s