diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gleam/regex.gleam | 11 | ||||
-rw-r--r-- | src/gleam_stdlib.mjs | 4 |
2 files changed, 5 insertions, 10 deletions
diff --git a/src/gleam/regex.gleam b/src/gleam/regex.gleam index b72a02e..eecb3ec 100644 --- a/src/gleam/regex.gleam +++ b/src/gleam/regex.gleam @@ -127,19 +127,10 @@ pub fn split(with regex: Regex, content string: String) -> List(String) { do_split(regex, string) } -@target(erlang) @external(erlang, "gleam_stdlib", "regex_split") +@external(javascript, "../gleam_stdlib.mjs", "regex_split") fn do_split(a: Regex, b: String) -> List(String) -@target(javascript) -fn do_split(regex, string) -> List(String) { - js_split(string, regex) -} - -@target(javascript) -@external(javascript, "../gleam_stdlib.mjs", "split") -fn js_split(a: String, b: Regex) -> List(String) - /// Collects all matches of the regular expression. /// /// ## Examples diff --git a/src/gleam_stdlib.mjs b/src/gleam_stdlib.mjs index 40fcc3f..d921c63 100644 --- a/src/gleam_stdlib.mjs +++ b/src/gleam_stdlib.mjs @@ -402,6 +402,10 @@ export function compile_regex(pattern, options) { } } +export function regex_split(regex, string) { + return List.fromArray(string.split(regex).map(item => item === undefined ? "" : item)); +} + export function regex_scan(regex, string) { const matches = Array.from(string.matchAll(regex)).map((match) => { const content = match[0]; |