Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.06;
Скачать: CL | DM;

Вниз

Очистить строку от спецсимволов   Найти похожие ветки 

 
unregistered_member   (2007-04-14 22:42) [0]

Бодрого времени суток! Подскажите как очистить строку от спецсимволов (перевода строки, etc)? Требуется загрузить в string текст из файла, и работать с ним, а спецсимволы мешаются, может какая функция для очистки есть; нужно получить просто строку состоящую из стандартных "видимых" символов.


 
Плохиш ©   (2007-04-14 22:52) [1]

for i:=1 to length(s) do if s[i]<#32 then s[i]:=#32;

Только нафига она эта строка после этого нужна будет?


 
{RASkov}   (2007-04-14 23:00) [2]

или такой вариант:
for N:= Length(S) downto 1 do
if ORD(S[N])<32 then Delete(S, N, 1);
или
for N:= Length(S) downto 1 do
if not (S[N] in ["A".."я", "A".."z", " ", "0".."9",.....]) then Delete(S, N, 1);


 
Anatoly Podgoretsky ©   (2007-04-14 23:00) [3]

> unregistered_member  (14.04.2007 22:42:00)  [0]

Если есть символы перевода строки, то это уже две строки.


 
unregistered_member   (2007-04-14 23:28) [4]

строка = массив символов, даже если в них затесался символ перевода строки, то это все равно одна строка
В выводе этой строки она разобьется на две, но это уже в выводе...


 
{RASkov}   (2007-04-14 23:39) [5]

> [4] unregistered_member   (14.04.07 23:28)

Садись... пять :)


 
Плохиш ©   (2007-04-15 00:15) [6]


> unregistered_member   (14.04.07 23:28) [4]
> строка = массив символов, даже если в них затесался символ
> перевода строки

Если в строке "затесался" какой-нибуть символ, то кто-то этот символ туда с какой-то целью вставил и если вы из строки этот символ уберёте, то будет уже не исходная строка. Смысл обрабатывать фразу "Казнить нельзя, помиловать" как "Казнить, нельзя помиловать" вижу только применительно к действию над вами...


 
McSimm ©   (2007-04-15 00:27) [7]


> если вы из строки этот символ уберёте, то будет уже не исходная
> строка

Работу со строками необходимо вообще запретить. Как ересь :)


 
Anatoly Podgoretsky ©   (2007-04-15 00:51) [8]

Ты наверно путаешь с типом string


 
Германн ©   (2007-04-15 01:10) [9]


> Anatoly Podgoretsky ©   (15.04.07 00:51) [8]
>
> Ты наверно путаешь с типом string
>

Только тип ShortString не трогайте, пожалуйста! Он греет мою душу уже много лет. И, надеюсь, останется со мной, пока смерть не разлучит нас! :-)


 
Плохиш ©   (2007-04-15 04:29) [10]


> Германн ©   (15.04.07 01:10) [9]

Говоришь душу греет? Хм,хм... <кровожадно прищуриваясь, точа ржавую шашку> :-))


 
unregistered_member   (2007-04-15 12:14) [11]

Ну как всегда, еще предложения по сути вопроса есть?


 
Плохиш ©   (2007-04-15 12:45) [12]


> unregistered_member   (15.04.07 12:14) [11]
> Ну как всегда, еще предложения по сути вопроса есть?

Спасибо, порадовал...


 
проходивший мимо   (2007-04-15 15:26) [13]

можно сделать так:
(использую MEMO, т.к. не помню как подобный массив называется, толи TList, толи TStringList, вобщем не помню)

var
s,stroka:string;
i:integer;
begin
Memo1.Lines.LoadFromFile("data.txt");
stroka:="";
for i:=0 to Memo1.Lines.Count-1 do
stroka:=stroka+Memo1.Lines[i];

Edit1.Text:=stroka;



 
Amoeba ©   (2007-04-16 11:05) [14]

Скачай библиотеку QStrings (бесплатно, в исходниках). Поиск поможет.


 
unregistered_member   (2007-04-16 17:22) [15]

Спасибо откликнувшимся, сделал с стиле if ORD(S[N])<32 ...



Страницы: 1 вся ветка

Текущий архив: 2007.05.06;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.019 c
15-1175851704
Vlad Oshin
2007-04-06 13:28
2007.05.06
Как прочитать из VBA excel ключ реестра?


1-1173274283
alexey_mas
2007-03-07 16:31
2007.05.06
MDI интерфейс


6-1162976599
olevacho_
2006-11-08 12:03
2007.05.06
зависание TIDHTTP


11-1158926579
kichrot
2006-09-22 16:02
2007.05.06
Запрет перемещения разделителя в заголовке ListView


3-1171859674
faga
2007-02-19 07:34
2007.05.06
работа с DBF