package octez-libs
split delim ~limit str
splits str
into a list of strings. Splitting occurs on delim
characters (which are removed from output) at most limit
times. Remaining delim
characters are included in the last element of the resulting list.
limit
defaults to max_int
.
This function obeys the invariant that for all limit
s, delim
s and str
s: String.concat (String.init 1 (fun _ -> delim)) (split delim ~limit str) = str
.
Splits a string on a delimiter character. It strips delimiters at the beginning and at the end. It considers groups of delimiters as one. If limit
is passed, stops after limit
split(s). limit
defaults to max_int
. It's guaranteed to never produce empty strings in the output. Therefore, it's capable of producing an empty list as a result.
For example, split_no_empty ',' ",hello,,world,"
returns "hello"; "world"
val chunk_bytes :
?error_on_partial_chunk:'a ->
int ->
bytes ->
(string list, 'a) result
chunk_bytes n b
chunks the sequence of bytes b
into a list of strings, each of length n
. The last chunk may be a non-empty string of length less than n
, in which case the behaviour of the function depends on whether error_on_partial_chunk
is set:
- If
error_on_partial_chunk
is set, then the function returnsError error_on_partial_chunk
, - Otherwise, the function return the list of chunks, where the last chunk is a non-empty string of length less than
n
.
Some (input with prefix
removed), if string has prefix
, else None
Some (input with suffix
removed), if string has suffix
, else None
Functional iteration over the characters of a string from first to last
val pp_bytes_hex : Format.formatter -> bytes -> unit
Pretty print bytes as hexadecimal string.