diff options
| author | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2022-02-23 12:13:29 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-23 12:13:29 +0100 |
| commit | dd0d61e97cc20956bc4c84e8c203653e22992738 (patch) | |
| tree | 6db42dca6c248a3985e1a26a843feaf7d9095cb5 | |
| parent | e81ed9a9601f6a7761dec5b0f96cc8680a16f166 (diff) | |
| parent | 2abba6e0579d2e2451a2c922dc3341f0075625b1 (diff) | |
Merge pull request #1528 from Tetralux/split-docs
Add doc comments to strings.split() and strings.split_n()
| -rw-r--r-- | core/strings/strings.odin | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/core/strings/strings.odin b/core/strings/strings.odin index 4daa0bacd..670da166b 100644 --- a/core/strings/strings.odin +++ b/core/strings/strings.odin @@ -280,10 +280,29 @@ _split :: proc(s_, sep: string, sep_save, n_: int, allocator := context.allocato return res[:i+1] } +/* + Splits a string into parts, based on a separator. + Returned strings are substrings of 's'. + ``` + s := "aaa.bbb.ccc.ddd.eee" // 5 parts + ss := split(s, ".") + fmt.println(ss) // [aaa, bbb, ccc, ddd, eee] + ``` +*/ split :: proc(s, sep: string, allocator := context.allocator) -> []string { return _split(s, sep, 0, -1, allocator) } +/* + Splits a string into a total of 'n' parts, based on a separator. + Returns fewer parts if there wasn't enough occurrences of the separator. + Returned strings are substrings of 's'. + ``` + s := "aaa.bbb.ccc.ddd.eee" // 5 parts present + ss := split_n(s, ".", 3) // total of 3 wanted + fmt.println(ss) // [aaa, bbb, ccc.ddd.eee] + ``` +*/ split_n :: proc(s, sep: string, n: int, allocator := context.allocator) -> []string { return _split(s, sep, 0, n, allocator) } |