0 / 0 / 1
Регистрация: 05.02.2012
Сообщений: 17
1

Удаление определенных символов из строки

20.02.2012, 00:31. Показов 3551. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Открываем txt файл со строкой в мемо1. тут все ок)
C++
1
2
3
4
5
6
{
if(OpenDialog1->Execute())
{
Memo1->Lines->LoadFromFile(OpenDialog1->FileName);
}
}
После при нажатии на копку:
C++
1
2
3
4
AnsiString str=Memo1->Lines->GetText();  //присваиваем str строку из мемо1
int dlina=str.Length(); //получаем длину строки 
 
...
Теперь вопрос, как сделать что-бы начиная с первого символа строки до последнего, они сравнивались с заданными ?

например строка qwerty, берется первый символ q и сравнивается с заданным, если равно берем след. символ, не равно - выполняется другое условие...и так нужно что-бы проходило всю строки
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.02.2012, 00:31
Ответы с готовыми решениями:

Удаление из строки определенных символов
Подскажите плиз функцию которая удаляет с строки символы. Например ввели символ А и с строки str...

Удаление определенных букв из строки
Доброго времени суток! Помогите, пожалуйста, с заданием! Буду очень благодарен! Дано задание:...

Удаление определенных цифр из строки
Всем привет. Интересная задачка попалась, сижу, думаю. Пользователь вводит цифровой набор, к...

Вывести части строки до определенных символов
Помогите мне с задачкой. Дана строка, нужно разделить ее на несколько частей до определенных...

9
159 / 145 / 14
Регистрация: 03.02.2012
Сообщений: 788
Записей в блоге: 1
20.02.2012, 01:14 2
Надо извлекать строку в char * и потом посимвольно в цикле сравнивать с символами которые нужно отсекать. Если символ в обследуемой строке не попадает в список отсекаемых, то добавляем его ко второй строке char *. Возвращаем 2-ю строку где нет ни одного ненужного символа.
1
0 / 0 / 1
Регистрация: 05.02.2012
Сообщений: 17
20.02.2012, 01:17  [ТС] 3
проблема в том, что я понимаю что нужно сделать, но не могу понять как.
0
159 / 145 / 14
Регистрация: 03.02.2012
Сообщений: 788
Записей в блоге: 1
20.02.2012, 01:20 4
список отсекаемых символов большой ?
0
0 / 0 / 1
Регистрация: 05.02.2012
Сообщений: 17
20.02.2012, 01:25  [ТС] 5
3 символа "o" "e" "a"
0
LK
Заблокирован
20.02.2012, 01:51 6
использовать функцию StringReplace() или искать по String.Pos() и удалять при помощи String.Delete(index_simvola,1)
0
159 / 145 / 14
Регистрация: 03.02.2012
Сообщений: 788
Записей в блоге: 1
20.02.2012, 01:55 7
что-то в этом роде на Си

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
char *Source;
char *Dest;
 
unsigned int i = 0;
unsigned int j = 0;
unsigned int LenStr = 0;
 
Source = new char[2000];
Dest = new char[2000];
 
if ( strlen(Edit1->Text.c_str()) < 1998 ){
 
// копируем строку для переработки
strcpy ( Source, Edit1->Text.c_str());
 
LenStr = strlen (Source);
 
  while( Source[i] != '\r' && i < LenStr ){
 
   if(  Source[i] != 'o' || 
    Source[i] != 'e' || 
    Source[i] != 'a'){
    Dest[j] = Source[i];
    ++j;
        Dest[j]=NULL;
   }
    ++i;
  }
 
 
// Копируем полученую строку куда-нибудь
Edit2->Text = Dest;
 
}
delete [] Source;
delete [] Dest;
Может кто-нибудь предложит более элегантный вариант...
0
12 / 12 / 0
Регистрация: 29.05.2011
Сообщений: 35
20.02.2012, 02:03 8
В цикле
C++
1
2
3
4
5
6
7
for (i=0;i<s1.length(s1);i++)
{
  if (not s1[i]=='x') {
    s2[k]=s1[i];
    k++;
  }
}
 Комментарий модератора 
Berezhnyk, используйте тег вставки кода :
[CPP ]без пробелов[ /CPP] или кнопка на панели окна редактирования сообщения
Правила
2.8. Используйте тэги форматирования текста для удобства восприятия ваших сообщений другими пользователями.
1
159 / 145 / 14
Регистрация: 03.02.2012
Сообщений: 788
Записей в блоге: 1
20.02.2012, 02:15 9
Я только ошибся и проверка символов должна быть не через логическое ИЛИ, а через И

вот так:

C
1
2
3
 if(    Source[i] != 'o' && 
    Source[i] != 'e' &&
    Source[i] != 'a'){
1
0 / 0 / 1
Регистрация: 05.02.2012
Сообщений: 17
20.02.2012, 02:26  [ТС] 10
Berezhnyk, i<s1.length() без s1 должно быть. Исходя из ваших ответов, по моему понял как нужно сделать, чуть позже выложу свой вариант, если конечно он получится ))
0
20.02.2012, 02:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.02.2012, 02:26
Помогаю со студенческими работами здесь

Считать текст из файла и записать в другой только строки, не содержащие определенных символов
Всем привет, кто может помочь с решением данной задачи, буду очень благодарен. &quot;Написать...

Удаление нескольких определенных символов из строки
Наверное детский вопрос, но все же: есть строка из неё надо удалить все символы препенания (точки,...

Удаление из строки определенных сочетаний символов
Суть программы: пользователю необходимо задать строку символов и отдельно 4 слова. Необходимо...

Ввод только определенных символов, удаление запрещенных символов из ячейки ввода
Добрый вечер! Подскажите, пожалуйста, как можно такое реализовать посредством jQuery. Вот форма: ...

Удаление из имён файлов определённых символов и сочетаний символов
Есть много обложек и в названиях присутствуют знаки &quot;%2C+&quot; и &quot;+&quot; (без кавычек) пример:...

Удаление из ячейки определенных символов
Есть таблица, в определенную ячейку я ввожу полный адрес, т.е. в нем содержаться запятые и точки....


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru