crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )


  Ответ в Проблема с заменой символов
Введите ваше имя
Подтвердите код

Введите в поле код из 6 символов, отображенных в виде изображения. Если вы не можете прочитать код с изображения, нажмите на изображение для генерации нового кода.
 

Опции сообщения
 Включить смайлы?
Иконки сообщения
(Опционально)
                                
                                
  [ Без иконки ]
 


Последние 10 сообщений [ в обратном порядке ]
Алексей1153 Дата 20.11.2019, 7:54
  GooDZon, если есть возможность пробежаться посимвольно по каждому тексту, то бежишь и заменяешь "инверсно" a на b , b на a

Ещё вариант, более ресурсоёмкий, сгенерировать последовательность символов X, не встречающуюся в документе (как - это нужно придумать. Подбором или осознанным анализом текста). Последовательность не должна содержать a и b. Далее заменяем все b на X , затем все a на b, затем X на a

вроде должно сработать )
GooDZon Дата 19.11.2019, 15:18
  Необходимо сделать так, чтобы при вводе символа "а", символ заменялся на "b", а "b" заменялся на "a". Если символ a на b в тексте уже менялся, то не заменять на a, во избежании повторов (у меня повтор получается и все символы обратно на a меняются).

При коде:
QString a = ui->textEdit->toHtml();
    a.replace("a","b");
ui->textBrowser->setHtml(a);


Меняется только a на b, но если дополнить код

QString a = ui->textEdit->toPlainText();
    a.replace("a","b").replace("b","a");
    ui->textBrowser->setPlainText(a);


То "a" сохраняется как "а", а "b" меняется на "a".
Как мне сделать чтобы а на b менялось и b на а.

В первом варианте использовал toHtml(); и setHtml(a); - это необходимо для сохранения форматирования текста (такие параметры как цвет, размер, формат шрифта) сохраняются при замене. Мне нужно именно с сохранением форматирования. При первом варианте кода форматирование сохраняется, а при втором ничего не происходит, поэтому я и заменил код на toPlainText(); но тогда a не меняется на b.

Просмотр темы полностью (откроется в новом окне)
RSS Текстовая версия Сейчас: 27.10.2021, 18:50