Замена подстроки в char[]

ivpo
Offline
Зарегистрирован: 07.01.2014

Здравствуйте

Поделитесь пожалуйста алгоритмом поиска и замены подстроки в char[]. Нужно именно для char[] - для String итак есть готовые решения. Выполнение операций в String с последующей конвертацией в char[] не подойдет - теряются спецсимволы (использую строку для GET запроса по HTTP).

Заранее спасибо!

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Не посоветую ничего нового - циклом перебираем символы. При совпадени первого проверяется второй и т.д. При полном совпадении меняются значения от начального значения (его номер запомнили) до необходимого Вам. При несовпадении размеров заменяемой области применяем промежуточный массив.

DIYMan
DIYMan аватар
Offline
Зарегистрирован: 23.11.2015

ivpo пишет:

Выполнение операций в String с последующей конвертацией в char[] не подойдет - теряются спецсимволы (использую строку для GET запроса по HTTP).

Это что за дичь? Спецсимволы теряются не из-за String, а из-за кривых ручонок, патамушта String - это обёртка над стандартными библиотечными функциями типа strstr, strlen и пр. - теми самыми, которые ты будешь юзать, отказавшись от String.

Ничего там не теряется в String, от слова "совсем". Приводи пример, где у тебя теряется, и посмотрим, в чём косяк.