надто неоптимізовано, не треба обраховувати довжину рядка на кожному кроці