ludic/docs/language/text/text-slice.md

939 B

id name category kind tokens sig tip order ns member
text-slice Text.slice text namespace-method Text.slice Text.slice(s, a, b) -> string A substring covering bytes [a, b). 2 Text slice

Returns a fresh string of the bytes from index a up to but not including b — the half-open range [a, b), so Text.slice("hello world", 0, 5) is "hello". It is the call form of the s[a..b] slice syntax and allocates a new string. Use it to cut a fixed-width field, drop a prefix, or take the first few characters of a name.

Parameters:

  • s — the source string
  • a — the start byte index (inclusive)
  • b — the end byte index (exclusive)
program FirstWord {
  let line: string = "hello world"

  handler Split phase Update {
    let space = Text.index_of(line, " ")   # 5
    let word = Text.slice(line, 0, space)  # "hello"
  }
}