Копирование части строки
Функция substr() делает простую, но чертовски полезную вещь — вырезает кусок строки. Примерно как ножом по батону: с какого символа начать (begin),
сколько символов отрезать (length) — и готово. Быстро, чётко, без танцев с бубнами.
Синтаксис? Вот такой:
substr(string, begin, length)
Это как сказать: «Дай-ка мне начиная с позиции begin, ещё столько-то символов». Всё. Не надо подключать библиотеки, писать вручную сто строчек кода и мантры читать. Просто одна функция — и поехали.
Если ты когда-нибудь парсил текст, занимался веб-разработкой или вытаскивал данные из CSV — ты знаешь, насколько может пригодиться умение быстро достать нужный кусок строки.
Не весь текст, не всё подряд, а чётко нужный тебе кусок. Например, первые 5 символов логина. Или домен из email?адреса. Или дату из названия файла. Вариантов — море, проблема одна: как вырезать точно и сразу?
Вот где приходит эта скромная substr(). Она делает то, за что раньше приходилось писать цикл, городить проверки и карабкаться через мешанину условий. Теперь — всё на ладони.
Причём принципы одинаковые хоть в Python, хоть в JavaScript, хоть в каком-нибудь любопытном движке вроде CalculationLaboratory: индекс считается с нуля, ничего нового.
Если вышел за границу строки — получишь либо пустую строку, либо аккуратную ошибку. Приятно, когда функция умеет за себя постоять, да?
Конечно, никто не мешает добавлять проверку аргументов. Индекс меньше нуля? Длина отрицательная? Ну... сам знаешь, к чему это приводит. Поэтому хорошим тоном будет заранее убедиться,
что ты не пытаешься отрезать несуществующее. А дальше — дело техники: создать новую строку, пробежать по нужному отрезку исходной, скопировать всё посимвольно и вернуть результат.
Словом, substr — это как пинцет в инструменте разработчика. Вроде ничего особенного, а без него невозможно. Работает везде, выглядит просто, но экономит массу времени.
И если ты пишешь что-то, где текст — не просто текст, а данные, позиции, шаблоны — поверь, тебе не раз захочется сказать этой функции спасибо.
Справка по встроенным функциям
Правила программирования скриптов
Опции программы
Цветовые константы