![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Парсер строки [D6, XP]
novai © (2009-12-10 07:30:00)есть TStringList со строками типа:
установить 100 100
идти 10 10
задержать 20
повоторить
как правильно пропарсить строки, чтобы получить содержимое в 3х переменных?
например итог парсера первой строки:
var
cmd, param1, param2: strings;
...
парсим строку на выходе получаем:
cmd:= 'идти';
param1:='10';
param2:='10';
Сергей М. (2009-12-10 10:30:00) [21]
> novai
И где в этих требованиях фигурирует недопустимость использование запятой в кач-ве разделителя ?
novai (2009-12-10 10:28:00) [22]
> требования выполнены?
нет
1.
> <script>
первая команда
> <cmd type="идти" param1="на юг" param2="молча" />
вторая команда
и соответственно не на одной строке...
Медвежонок Пятачок (2009-12-10 10:26:00) [23]На держи.
команда в одной строке, параметры за командой
<script>
<cmd type="идти" param1="на юг" param2="молча" />
<cmd type="учиться" param1="слушать" param2="если задаешь вопросы" />
</script>
требования выполнены?
novai (2009-12-10 10:21:00) [24]
> И чьи это требования?
> Ассамблеи ООН или магатэ?
а это важно? главное они есть, что ограничивает варианты реализации
Медвежонок Пятачок (2009-12-10 10:20:00) [25]требования к структуре в 9 посте (в конце).
И чьи это требования?
Ассамблеи ООН или магатэ?
novai (2009-12-10 10:20:00) [26]
> Советы они не для тебя.
все приведенные советы я просмотрел (кроме сторонней библиотеки) и объяснил почему не подходит...
novai (2009-12-10 10:19:00) [27]
> Мне она понятна. И мне понятно, что она не самая оптимальная.
буду рад услышать более оптимальный вариант... требования к структуре в 9 посте (в конце).
Медвежонок Пятачок (2009-12-10 10:18:00) [28]Мастера могут подсказать, как более правильно сделать
Тебе уже подсказали и как код оптимизировать (уменьшить)
И как скрипт хранить таким образом, чтобы чтение его было более простым.
Но ты же умнее всех. Советы они не для тебя.
Медвежонок Пятачок (2009-12-10 10:16:00) [29]разве Вам структура не понятна? Я все привел в своем вопросе
Мне она понятна. И мне понятно, что она не самая оптимальная.
novai (2009-12-10 10:15:00) [30]
> или под оптимизацией мы понимаем меньший объем кода
и это тоже, но не в ущерб читаемости...
Медвежонок Пятачок (2009-12-10 10:15:00) [31]когда же тебе называют готовые решения в виде екстрактвордс ты тупо заявляешь нахрена козе чужой боян, коза свои бояны будет юзать.
после чего снова с тупым упорством спрашиваешь "ну как же мне оптимизировать мой код?"
novai (2009-12-10 10:15:00) [32]
> то надо думать над структурой данных, которую ты используешь
> для описания скрипта.
разве Вам структура не понятна? Я все привел в своем вопросе
novai (2009-12-10 10:13:00) [33]
> ты задал тупой вопрос.
это решать не Вам
> так какого такого задавать вопрос про оптимизацию твоего
> кода?
любой код новичка можно оптимизировать, вот я и хочу этого? Мастера могут подсказать, как более правильно сделать, то что реализовал я (в силу своих знаний)
Медвежонок Пятачок (2009-12-10 10:12:00) [34]или под оптимизацией мы понимаем меньший объем кода?
если так, то надо думать над структурой данных, которую ты используешь для описания скрипта.
тогда и код будет компактнее и дурацких вопросов не будет.
Медвежонок Пятачок (2009-12-10 10:10:00) [35]Я же задал конкретный вопрос?
ты задал тупой вопрос.
твой код который ты привел работает?
работает.
он сильно тормозит программу?
думаю что нет.
так какого такого задавать вопрос про оптимизацию твоего кода?
novai (2009-12-10 10:08:00) [36]
> если скрипт будет не тупо в плайнтексте, то и парсить его
> не потребуется.
> ну и оптимизация будет не нужна
почему, когда новички спрашивают, что можно сделать, Вы, в основном отвечаете: если не, то ничего не надо! Я же задал конкретный вопрос?
> В ini-формате будет еще проще - готовый парсер представлен
> классом TIniFile
к сожалению, одна строка - одна команда с доп параметрами...
Сергей М. (2009-12-10 09:47:00) [37]
> у меня наверное проще
В ini-формате будет еще проще - готовый парсер представлен классом TIniFile
[CMD1]
Name=установить
Param1=100
Param2=100
[CMD2]
Name=идти
Param1=10
Param2=10
[CMD3]
Name=задержать
Param1=20
[CMD4]
Name=повоторить
Медвежонок Пятачок (2009-12-10 09:46:00) [38]// парсер текущей строки скрипта
если скрипт будет не тупо в плайнтексте, то и парсить его не потребуется.
ну и оптимизация будет не нужна
novai (2009-12-10 09:43:00) [39]а можно ли как нибудь оптимизировать мой код?
novai (2009-12-10 09:42:00) [40]
> проще всего TStringList.CommaText использовать
посмотрел как реализовано... у меня наверное проще...
> то для этих целей есть у RX
зачем мне еще сторонние компоненты? для этой цели и свое подойдет...
всем спасибо, остановлюсь на своем варианте...