ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

ВОПРОС ОСТАЛСЯ ОТКРЫТЫМ.
  #11  
Старый 05.06.2010, 09:09
Аватар для Dimon32
Dimon32
Познающий
Регистрация: 06.05.2010
Сообщений: 34
Провел на форуме:
20723

Репутация: 0
Exclamation ВОПРОС ОСТАЛСЯ ОТКРЫТЫМ.

Цитата:
Сообщение от slesh  
тему научись сначало правильно называть, затем хоть почитай доку по делфи, и тока потом называй это НЕВЕРОЯТНО трудной задачей.

тебе реально достаточно пробежаться по всем элементам и сравнить по двум условиям
1) пустая строка. просто проверяй <> '';
2) проверя строку на пробелы. циклом прогоняй по всем символам и если символ не пробел, то строку оставляй в покое. тоже самое и на табуляторы проверяй.
Хотя можеш и trim заюзать, но всё равно могут быть еще непечатные символы, которые трим может пропустить случайно
Цитата:
Сообщение от slesh  
тему научись сначало правильно называть
Тема названа так - потому что это действительно не простая задача, как оказалось - ни один из предложенных вариантов пользователями этого форума не сработал.

Цитата:
Сообщение от slesh  
затем хоть почитай доку по делфи
Я дофига прочитал, а нормального удаления пустых строк и строк состоящих из пробелов не нашел. Все методы не дают достаточного результата.
Если знаеш учебник, который я пропустил - ткни пальцем. Буду очень благодарен.

Цитата:
Сообщение от slesh  
тебе реально достаточно пробежаться по всем элементам и сравнить по двум условиям
1) пустая строка. просто проверяй <> '';
2) проверя строку на пробелы. циклом прогоняй по всем символам и если символ не пробел, то строку оставляй в покое. тоже самое и на табуляторы проверяй.
Хотя можеш и trim заюзать, но всё равно могут быть еще непечатные символы, которые трим может пропустить случайно
На словах то каждый тут просто гений, а реально работающий код никто не может предложить. Не ужели эта задача нерешаема?
 
Ответить с цитированием

  #12  
Старый 05.06.2010, 09:14
Аватар для slesh
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

Может у тебя проблема в том, что в Memo1 находится не только пробелы и пустые строки или табуляторы а еще какая нить непечатная фигня? И ты по этому поводу мозги угукаешь людям.

Код:
var
  x : integer;
begin
  for x := Memo1.Lines.Count - 1 downto 0 do
  begin
    if trim(Memo1.Lines.Strings[x]) = '' then Memo1.Lines.Delete(x);
  end;
end;
Отлично удаляет пустые строки, строки состоящие из пробелов, строки состоящие из табуляторов и строки состоящие из табов и пробелов.

Последний раз редактировалось slesh; 05.06.2010 в 09:24..
 
Ответить с цитированием

  #13  
Старый 05.06.2010, 09:18
Аватар для AquaKlaster
AquaKlaster
Участник форума
Регистрация: 09.03.2009
Сообщений: 178
Провел на форуме:
1605524

Репутация: 523
Отправить сообщение для AquaKlaster с помощью ICQ
По умолчанию

Код:
var
  I: Integer;
begin
  for I := 0 to Memo1.Lines.Count - 1 do
  begin
    if (Memo1.Lines[I] <> '') and (Trim(Memo1.Lines[I]) <> '') then
      Memo2.Lines.Add(Memo1.Lines[I]);
  end;

end;
 
Ответить с цитированием

HTML код в мемо находится.
  #14  
Старый 05.06.2010, 09:24
Аватар для Dimon32
Dimon32
Познающий
Регистрация: 06.05.2010
Сообщений: 34
Провел на форуме:
20723

Репутация: 0
По умолчанию HTML код в мемо находится.

Цитата:
Сообщение от slesh  
Может у тебя проблема в том, что в Memo1 находится не только пробелы и пустые строки или табуляторы а еще какая нить непечатная фигня? И ты по этому поводу мозги угукаешь людям
HTML код в мемо находится. А точнее - форма подписки на рассылку.

Вот например:
Код:
<DIV align="center"><P style="font-family: 
Verdana; font-size:11px; text-
indent:0px"><STRONG><FONT 
color="#cc0000" size="4" 
face="Verdana">Хотите бесплатно получать 2
-3 видеоурока каждый месяц?
</FONT></STRONG></P></DIV>
<TABLE width="477" height="230" border="0" 
align="center">
  <TBODY><TR>                                   <TD 
width="36%" 
rowspan="8" align="center" valign="top"><DIV 
class="widget">
                                      <FORM 
name="SR_form" method="post" target="_blank" 
action="http://smartresponder.ru/subscribe.html" 
onsubmit="return SR_submit(this)">





                  <INPUT type="hidden" 
name="version" value="1">





<INPUT type="hidden" name="tid" 
value="34769">





<INPUT type="hidden" name="uid" 
value="27025">





<INPUT type="hidden" name="charset" 
value="windows-1251">





<INPUT type="hidden" name="lang" value="1">





<INPUT type="hidden" name="did[]" 
value="9267">



























                 <P style="font-family: Verdana,sans-
serif; margin:0px; padding:0px; color: #000000; 
font-size: 11px; font-weight: normal; text-
indent:0px"> Ваше имя на русском:





                 <INPUT type="text" 
name="field_name_first" size="23" value="" 
maxlength="50" style="border: 1px #c1c1c1 
solid; font-family: Verdana; font-size: 11px; 
width:140; color:#424242;"></P>





                 <P style="font-family: Verdana,sans-
serif; margin:0px; padding:0px; color: #000000; 
font-size: 11px; font-weight: normal; text-
indent:0px"> Ваш Email адрес:





                 <INPUT type="text" 
name="field_email" size="23" value="" 
maxlength="50" style="margin:0px; padding:0px; 
border: 1px #c1c1c1 solid; font-family: Verdana; 
font-size: 11px; width:140; color:#424242;"></P>





                            <P style="margin:5px;margin-
top:10px; padding:0px; text-indent:0px">





                      <INPUT type="submit" 
name="SR_submitButton" value="Да, хочу" 
style=" font-family: Verdana, sans-serif; border:1px 
gray solid; font-size: 11px; width:140px; 
height:20px;   background-Color:#f6f6f6; 
background-image: url(img/button2.gif); 
color:#000000; font-weight:bold;">





                    </P>



























                  </FORM>





                                    </DIV>
















<P style="font-family: Verdana; font-size:11px; 
text-indent:0px"><STRONG>Вводите данные в 
форму и жмите по кнопке "Да, 
хочу".</STRONG></P>
















<P style="font-family: Verdana; font-size:11px; 
text-indent:0px"><FONT 
color="#cc0000">Приватность Ваших данных 
гарантируется.</FONT></P>
















</TD>





                                  <TD width="64%"><P 
class="ds"><FONT color="#0500CC">+ 
<STRONG>Свежие 
скрипты</STRONG></FONT></P></TD>





                                </TR>





                                <TR> 





                                  <TD><P 
class="ds"><FONT color="#0ECC00">





                                      <STRONG>+ Свежие 
статьи</STRONG></FONT></P></TD>





                                </TR>





                                <TR> 





                                  <TD><P 
class="ds"><FONT color="#cc0000">+ 
<STRONG>Свежие 
программы</STRONG></FONT></P></TD>





                                </TR>





                                <TR> 





                                  <TD><P class="ds">





                                      + Конкурсы с 
денежными призами</P></TD>





                                </TR>





                                <TR> 





                                  <TD><P class="ds">            
                          + <STRONG>100% авторский 
материал</STRONG></P></TD>





                                </TR>





                                <TR> 





                                  <TD><P class="ds">





                                      + Более 60000 
читателей</P></TD>





                                </TR>





					
			<TR> 





                                  <TD><P class="ds">





                                      + Более 100 
положительных отзывов</P></TD>





                                </TR>





					
			<TR> 





                                  <TD><P 
class="ds"></P></TD>





                                </TR>





                              
</TBODY></TABLE></TD></TR></TBODY></
TABLE></TD></TR></TBODY></TABLE></TD
></TR></TBODY>
____________________________________________
Вот отсюда нужно удалить лишние строки. Какие еще непечатные символы тут могут быть???

Последний раз редактировалось slesh; 05.06.2010 в 09:28..
 
Ответить с цитированием

  #15  
Старый 05.06.2010, 09:26
Аватар для AquaKlaster
AquaKlaster
Участник форума
Регистрация: 09.03.2009
Сообщений: 178
Провел на форуме:
1605524

Репутация: 523
Отправить сообщение для AquaKlaster с помощью ICQ
По умолчанию

Кидай такой длинный текст в тег CODE
 
Ответить с цитированием

  #16  
Старый 05.06.2010, 09:26
Аватар для slesh
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

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

  #17  
Старый 05.06.2010, 09:27
Аватар для AquaKlaster
AquaKlaster
Участник форума
Регистрация: 09.03.2009
Сообщений: 178
Провел на форуме:
1605524

Репутация: 523
Отправить сообщение для AquaKlaster с помощью ICQ
По умолчанию

Код:
var
  I: Integer;
begin
  I := 0;
  while Memo1.Lines.Count <> I do
  begin
    if (Memo1.Lines[I] <> '') and (Trim(Memo1.Lines[I]) <> '') then
      Inc(I)
    else
      Memo1.Lines.Delete(I);
  end;
end;
Данный код убрал пробелы и пустые строки с твоего HTML
 
Ответить с цитированием

СРАБОТАЛО!!!
  #18  
Старый 05.06.2010, 09:27
Аватар для Dimon32
Dimon32
Познающий
Регистрация: 06.05.2010
Сообщений: 34
Провел на форуме:
20723

Репутация: 0
Talking СРАБОТАЛО!!!

Цитата:
Сообщение от AquaKlaster  
Код:
var
  I: Integer;
begin
  for I := 0 to Memo1.Lines.Count - 1 do
  begin
    if (Memo1.Lines[I] <> '') and (Trim(Memo1.Lines[I]) <> '') then
      Memo2.Lines.Add(Memo1.Lines[I]);
  end;

end;
Чувак!!!! ты гений!! Невероятно, но это сработало!
Спасибо большое!
 
Ответить с цитированием

  #19  
Старый 05.06.2010, 09:29
Аватар для AquaKlaster
AquaKlaster
Участник форума
Регистрация: 09.03.2009
Сообщений: 178
Провел на форуме:
1605524

Репутация: 523
Отправить сообщение для AquaKlaster с помощью ICQ
По умолчанию

Цитата:
Сообщение от Dimon32  
Чувак!!!! ты гений!! Невероятно, но это сработало!
Спасибо большое!
Советую юзать мой второй код, он работает с 1 memo!
 
Ответить с цитированием

  #20  
Старый 05.06.2010, 09:29
Аватар для Dimon32
Dimon32
Познающий
Регистрация: 06.05.2010
Сообщений: 34
Провел на форуме:
20723

Репутация: 0
По умолчанию

Цитата:
Сообщение от AquaKlaster  
Кидай такой длинный текст в тег CODE
Ваш этот тег убирает как раз ненужные строки))). (Когда вставляеш)
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обзор программ удаляющиx дубликаты строк Vanterlog ICQ 14 22.05.2010 12:13
Удаление строк из файла le-mon Болталка 7 14.06.2009 16:40
Ограничение на кол-во строк recfrf Уязвимости 1 09.02.2009 23:21
Закон Sinay Авторские статьи 15 01.02.2009 22:55



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ