aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorinoas <mail@inoas.com>2022-11-05 14:59:55 +0100
committerLouis Pilfold <louis@lpil.uk>2022-11-06 17:08:23 +0000
commit48f322d660a3e5fe85392c6a82b1147e53c9357a (patch)
tree19b285023c09e826dacec3ade989ba239ca03d45 /src
parentc22ffd9244f2c6bbfb560b6d637eabca08414e99 (diff)
downloadgleam_stdlib-48f322d660a3e5fe85392c6a82b1147e53c9357a.tar.gz
gleam_stdlib-48f322d660a3e5fe85392c6a82b1147e53c9357a.zip
`string.split` will now return a list of graphemes if split on an empty
string (`""`)
Diffstat (limited to 'src')
-rw-r--r--src/gleam/string.gleam12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/gleam/string.gleam b/src/gleam/string.gleam
index 312b81d..598868a 100644
--- a/src/gleam/string.gleam
+++ b/src/gleam/string.gleam
@@ -410,10 +410,14 @@ if javascript {
/// ```
///
pub fn split(x: String, on substring: String) -> List(String) {
- x
- |> string_builder.from_string
- |> string_builder.split(on: substring)
- |> list.map(with: string_builder.to_string)
+ case substring {
+ "" -> to_graphemes(x)
+ _ ->
+ x
+ |> string_builder.from_string
+ |> string_builder.split(on: substring)
+ |> list.map(with: string_builder.to_string)
+ }
}
/// Splits a `String` a single time on the given substring.