Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > scanf в Delphi


Автор: dm9 20.11.2004, 22:03
Здравствуйте.

Есть ли в Delphi аналог scanf из C?

Мне требуется распихать куски стринга по различным переменным.
Что-то вроде:
DelphiScanf ('%s;%d', [q, w], 'qwewqe;12');
И получаю на выходе q = 'qwewqe'; w=12...

Автор: Alex 20.11.2004, 22:06
На сколько мне известно аналога нету.
Эту задачу можно решить с помощью регулярных выражений или с разбиением строки по разделителю.

Автор: dm9 20.11.2004, 22:09
Цитата(Alex @ 20.11.2004, 22:06)
Эту задачу можно решить с помощью регулярных выражений


А какой там синтаксис? Я знаком с Perl-совместимыми (PCRE). Можешь подсказать компоненты?

Цитата(Alex @ 20.11.2004, 22:06)
или с разбиением строки по разделителю


Ну, это понятно smile
Добавлено @ 22:13
Хотя, опять-таки, это не PHP, строки ручками придётся переводить в цифери, не есть гуд... Ну что ж, будем писать ручками.
Добавлено @ 22:17
Хм... вопрос, а синтаксис Delphi вообще может позволить то, что я написал в первом посте? Format работает примерно так, но там переменные передаются в ф-цию, а вот в обратную сторону, как я понимаю, нельзя, только если это на уровне языка такую фишку замутили, что вряд ли...

Автор: CompWorm 11.8.2007, 02:29
эээ... с запазданием на 2 года ответ  smile зато нашлось smile

вот вам аналог ScanF в Delphi:
http://www.torry.ru/pages.php?id=521
Цитата


Scanf for Delphi v.1.4    FWS  227 k  18 Mar 2002
By Evgeni Sorokin. Native sscanf and fscanf for Delphi (imagine Format working in the opposite direction), tools for formatted input, string processing and Delphi RTL extensions. The package supports C/C++ and Delphi syntax, all Delphi variable types, decimal separators, thousand separators, and formatted currency values. Includes a small learning tool.
 
Fully functional
Source: Included
Exe-Demo Included
Download: http://www.torry.ru/vcl/vcltools/text/scanf.zip


Автор: Sanchezzz 11.8.2007, 02:41
я сперва не обратил на дату. 
теперь в наше время есть все... 
Eсли нет то найдется кто напишет. smile 

Автор: CompWorm 11.8.2007, 03:09
 smile 
хе хе...

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

Автор: MetalFan 11.8.2007, 09:22
ситуация в теме напоминает цитату с башорг:
Цитата(bash.org.ru)
01-01-2005 21:22 | сообщение #46704
У меня следующая трабла. Очень плохо работает инет.

06-08-2007 09:32 | сообщение #66345
Windows Firewall отруби если включен

08-08-2007 01:14 | сообщение #66352
Действительно, Интернет тормозит: даже на форумах отвечают через пару лет )))

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