Logo

Programming-Idioms

  • Haskell
  • C

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.

#include <stdlib.h>
#include <string.h>
char *t=malloc((j-i+1)*sizeof(char));
strncpy(t,s+i,j-i);
t = drop i (take j s)
T : String := S (I .. J - 1);

In Ada, strings use 1-based indexing

In Ada, J is included by default when slicing

New implementation...