Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Сравнение 2-х строковых массивов


Автор: Demon74 8.1.2006, 14:16
Господа! Помогите, плиз!!! Намучался уже...(((
Суть проблемы : Имеются 2 массива из строк..типа
IPScreen1100=100.100.100.101,Prevent
IPScreen1101=100.100.100.102,Prevent
IPScreen1102=100.100.100.103,Prevent
IPScreen1103=100.100.100.104,Prevent
IPScreen1104=100.100.100.109,Prevent
IPScreen1105=100.100.100.110,Prevent

и

IPScreen1122=100.100.100.101,Prevent
IPScreen1100=100.100.100.102,Prevent
IPScreen1101=100.100.100.105,Prevent
IPScreen1102=100.100.100.106,Prevent
IPScreen1123=100.100.100.107,Prevent
IPScreen1124=100.100.100.108,Prevent

Нуна сравнить значения айпишников и удалить из первого списка те, которые встречаются во 2- м списке...использую 2 компонента Memo и естессна кнопки..ваще такое реалбно сделать?

Заранее благодпрен!!!

Автор: Duster 8.1.2006, 19:18
Только этот код обрезает то что вокруг ипа
Код

for(int i=0; i < Memo1->Lines->Count; i++)
{
 Memo1->Lines->Strings[i] = Memo1->Lines->Strings[i].Delete(1,13);
 Memo1->Lines->Strings[i] = Memo1->Lines->Strings[i].Delete(Memo1->Lines->Strings[i].Length() - 7,8);
}

for(int i=0; i < Memo2->Lines->Count; i++)
{
 Memo2->Lines->Strings[i] = Memo2->Lines->Strings[i].Delete(1,13);
 Memo2->Lines->Strings[i] = Memo2->Lines->Strings[i].Delete(Memo2->Lines->Strings[i].Length() - 7,8);
}

for(int i=0; i < Memo1->Lines->Count; i++)
{
 for(int j=0; j < Memo2->Lines->Count; j++)
 {
  if(Memo1->Lines->Strings[i]==Memo2->Lines->Strings[j]) Memo1->Lines->Delete(i);
 }
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)