Logo

Programming-Idioms

  • Pascal
  • Go

Idiom #38 Extract a substring

Find substring t consisting in characters i (included) to j (excluded) of string s.
Character indices start at 0 unless specified otherwise.
Make sure that multibyte characters are properly handled.

t := string([]rune(s)[i:j])

convert to []rune because some characters are two or more bytes.
t := copy(s,i+1,j-i);
uses Sysutils;
t := s.Substring(i,j-i);
T : String := S (I .. J - 1);

In Ada, strings use 1-based indexing

In Ada, J is included by default when slicing

New implementation...