Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.56/9: Рейтинг темы: голосов - 9, средняя оценка - 4.56
 Аватар для jkrnd
179 / 69 / 13
Регистрация: 22.12.2015
Сообщений: 2,648

Как заменить управляющие символы в строке?

17.09.2018, 11:20. Показов 2023. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем здравствуйте.

C++
1
2
    String s = "asdfasdfa123sdf";
    s = StringReplace(s, "a", "\\", TReplaceFlags() << rfReplaceAll);
Получается ожидаемое:
C++
1
s = "\\sdf\\sdf\\123sdf"
Но если:
C++
1
2
    String s = "\sdf\sdf\123sdf";
    s = StringReplace(s, "\\", "\\\\", TReplaceFlags() << rfReplaceAll);
Получается неожидаемое:
C++
1
s = "sdfsdfSsdf";
Обратный слэш вообще теряется, вместо "123" появляется "S". Почему?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.09.2018, 11:20
Ответы с готовыми решениями:

Как заменить символы в строке?
У меня есть строка к примеру string str = &quot;1,2,0,4,7,0&quot;; мне надо заменить все ноли на пробел Подскажите плиз

Как удалить управляющие символы?
Добрый день! При получении списка файлов с unix системы у меня, проходят управляющие символы терминала. Вот пример куска списка...

Как заменить символы и регистр в строке?
Входная строка &quot;Эта функция работает&quot; Как она должна выглядеть после метода &quot;этаФункцияРаботает&quot; Вопрос как сделать так...

1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
17.09.2018, 11:42
Лучший ответ Сообщение было отмечено jkrnd как решение

Решение

Цитата Сообщение от jkrnd Посмотреть сообщение
вместо "123" появляется "S".
\123 - это 1238=8310, как раз код 'S', так что оно не появляется, оно там изначально есть. А что такое \s билдер не понимает, у него нет такого управляющего символа. И бэкслеша в том виде, в котором ты его хочешь заменить, в строке тоже нет. Поэтому ничего и не меняется. Запусти свой код, но поставь брекпойнт перед StringReplace, и ты увидишь, что сразу после присвоения значения строке s она такая, как ты показал в самом низу поста, еще до того, как отработала StringReplace...
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.09.2018, 11:42
Помогаю со студенческими работами здесь

Как заменить символы в строке(каждый символ) на *?
Не могу понять, чтобы все символы(каждый) из строки заменить на другой например *, это получается нужно строку перевести в массив символов...

Как заменить буквы в строке на определенные символы?
Как заменить буквы в строке на определенные символы?

Как убрать все управляющие символы из wchar_t ?
Читаю все файлы в папке подряд (текстовые разумеется). Записываю содержимое в другой файл. Так вот, при чтении последней строки без...

Как заменить символы в строке в массиве на определённые цифры
Не получается заменить символы в строках на определённые цифры от 0 до 9, находил только замену строки на какое-то число. Помогите, вот...

Как заменить символы в строке, не соответствующие заданному шаблону?
Здравствуйте! Я хочу сделать шаблон допустимых символов, и если в строке существуют символы, которых нету в заданном шаблоне, заменять их...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Киев стоит - украинская песня
zorxor 28.01.2026
wfWdiRqdTxc О Господи, Вечный, Ты . . . Я помоги, Бесконечный. . . Я прошу Ты. . . Я погибаю, спаси. . . Я прошу Тебя Вечный. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru