Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.01.2013, 20:06   #1
N0iD
Пользователь
 
Аватар для N0iD
 
Регистрация: 05.05.2010
Сообщений: 50
Радость Парсинг значений.

Приветствую, есть вот такая строка:

Код HTML:
001,002,"003","004"
Мне нужно получить список вида:
Код HTML:
001
002
003
004
Так как в строке присутствуют ""- кавычки не на всех значениях, нужно эти кавычки удалить для дальнейшего парсинга. Хелп.

На данный момент сижу и разбираюсь с для работы с текстом: ( Pos, Delete, Insert, Copy) но пока что что то без успешно.

Спасибо за внимание.
N0iD вне форума Ответить с цитированием
Старый 27.01.2013, 20:10   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
with TStringList.Create do begin
 CommaText:=StringReplace('001,002,"003","004"','"','',[rfreplaceall]);
 ...
 теперь String[номер строки] даст нужный элемент
 ...
 free
end;
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.01.2013, 20:35   #3
N0iD
Пользователь
 
Аватар для N0iD
 
Регистрация: 05.05.2010
Сообщений: 50
По умолчанию

Спасибо, немножко не ясно но все-же.

Код:
with TStringList.Create do begin
Memo1.Text:=StringReplace(Memo1.Text,'"','',[rfreplaceall]);//Подчищаем кавычки
free
end;
В итоге в Memo текст будет иметь вот такой вид 001,002,003,004
Непонятно как привести список к такому виду в Memo:
Код:
001
002
003
004
Вот с этим не понятно
"теперь String[номер строки] даст нужный элемент"

А получаю данные с нужной строки таким образом:
Код:
ShowMessage(Memo1.Lines.Strings[0]);
N0iD вне форума Ответить с цитированием
Старый 27.01.2013, 20:37   #4
_ZixeL_
Форумчанин
 
Регистрация: 04.11.2012
Сообщений: 151
По умолчанию

Замените запятую на #010
_ZixeL_ вне форума Ответить с цитированием
Старый 27.01.2013, 20:37   #5
_ZixeL_
Форумчанин
 
Регистрация: 04.11.2012
Сообщений: 151
По умолчанию

Код:
Memo1.Text:=StringReplace(Memo1.Text,',',#010,[rfreplaceall]);
_ZixeL_ вне форума Ответить с цитированием
Старый 27.01.2013, 20:42   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
В итоге в Memo текст будет иметь вот такой вид 001,002,003,004
А таперича исчо раз найвнимательнейшим образом прочитай мой пост и сравни со своим.
Цитата:
Вот с этим не понятно
"теперь String[номер строки] даст нужный элемент"
Хелп почитай. String[] это массив строк в Мемо, начинающийся с нуля. И если нужно обратится к скажем 25-й строке то пишут - Strings[25];
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 27.01.2013, 20:48   #7
N0iD
Пользователь
 
Аватар для N0iD
 
Регистрация: 05.05.2010
Сообщений: 50
По умолчанию

Океюшки, все понял. Спасибо помогли.
N0iD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычисление значений функции для нескольких значений аргументов и параметров kolychii Помощь студентам 0 08.10.2012 15:49
Парсинг значений между тегами hziben Microsoft Office Excel 1 29.08.2012 23:05
Парсинг xml (yml) в php, получение значений. DarkHacker PHP 3 02.07.2012 11:46
парсинг значений raviti2 Работа с сетью в Delphi 5 22.02.2012 19:39
Сохранение и загрузка в файл текстовых значений и значений типа Boolean krikaved Общие вопросы Delphi 1 16.03.2010 07:53