В інформатиці підрядок — непорожня зв'язна частина рядка.

Формальне визначання Нехай — рядок довжини .

Будь-який рядок , в якому , є підрядком довжини .

Якщо , тоді називається префіксом довжини .

Якщо , тоді — суфікс довжини .

Префікс Префіксом рядка називається рядок , де . Власний префікс рядка не дорівнює самому рядку ; деякі джерела на додаток до цього накладають обмеження непорожності (). Префікс можна розглядати як особливий випадок підрядка.

Приклад З точки зору інформатики рядки «кіпед», «Вікі», «дія» є підрядками рядка «Вікіпедія»; при цьому «Вікі» — префіксом, а «дія» — суфіксом.

Вікіпедія

||кіпед||

Вікі дія

Отримання підрядка Якщо line — початковий рядок, begin — позиція першого символу підрядка, end — позиція останнього символу підрядка, то підрядок subline вираховується наступним чином:

У мові C char * subline = (char *)malloc(end - begin + 2); if (subline == NULL) { fprintf(stderr, "ERROR: malloc failed!"); exit(1); } memcpy(subline, line + begin, end - begin + 1); subline[end - begin + 1] = '\0';

У мові Python subline=line[begin:end+1]

У мові python підрядок є слайсом (зрізом) ().

У мові Perl $subline = substr($line, $begin, $end-$begin);

У мові Pascal SubStr := Copy(SourceStr, StartCharIndex, SubStrLength);

Операції з підрядком Окрім простої задачі виділення підрядка з рядка за двома індексами існує і складніша задача пошуку індексів, що вказують на заданий підрядок.

Див. також Рядкові алгоритми

Примітки