Владимир
Александр Опарин
Правильно ли я понял?
Замены с помощью этого метода последовательны и начинаются с левой части строки. Метод последовательно обрабатывает в данном примере первые два пробела – меняет их на один и более не возвращается к замененным элементам и идет дальше, т.е. продолжает уже поиск совпадений начиная с третьего элемента. На следуещем совпадении метод делает тоже самое и также не возвращается к предыдущим элементам, несмотря на то, что там два пробела, а ничинает поиск совпадений уже с пятого элемента. Не найдя более совпадений, метод останавливается даже в том случае, когда указано большое количество замен. Он просто линейно слева направо делает замены и не возвращается обратно, как это происходит с регулярными выражениями.