Podřetězec

V informatice je podřetězec  neprázdná připojená část řetězce .

Formální definice

Nechť  je řetězec délky .

Libovolný řetězec kde , je podřetězec délky .

Příklad

Z hlediska informatiky jsou řetězce „ kiped “, „ Wiki “, „ diya “ podřetězce řetězce „ Wikipedia “; zatímco " Wiki " je předpona a " diya " je přípona.

Wikipedie ||||||||| ||kiped|| |||| ||| Wiki ||| diya

Získání podřetězce

Pokud je řádek  zdrojovým řetězcem, začátek  je index prvního znaku podřetězce a konec  je index posledního znaku podřetězce, pak se podřádek podřetězce vypočítá takto:

V C

char* subline = ( char* )malloc( end - begin + 2 );
memcpy( subline, line + begin, end - begin + 1 );
subline[ end - begin + 1 ] = '\0';

V Pythonu

subline = line[begin:end+1]

V jazyce python je podřetězec slice (slice) ( anglicky  slice, array slicing ).

V Perlu

my $subline = substr $line, $begin, $end - $begin + 1;

V PHP

$subline = substr($line, $begin, $end - $begin + 1);

V Pascalu

subline := Copy(line, _begin, _end - _begin + 1);

V jazyce Ruby

subline = line[start..end]

V jazyce Java

subline = line.substring(begin,end+1)

Operace podřetězců

Kromě jednoduchého úkolu extrahovat podřetězec z řetězce pomocí dvou indexů existuje složitější úkol najít indexy ukazující na daný podřetězec v řetězci (hledat výskyt podřetězce v řetězci).

Viz také