(который можно было бы задать как StringFormat<'T, 'Result> или каким-либо способом позволяющим описать какие типы ожидаем встретить в строке)
Ну т.е. есть ли способ сделать что-то вроде:
let matchLikeSprintf string patternToMatch =
...
[<EntryPoint>]
let main argv =
matchLikeItSprintf "42 42.5 iamstring" "%d %f %s" // возвращает true
matchLikeItSprintf "42 iamstring" "%d %f %s" // возвращает false
?
В suave есть всякие sscanf, которые как printf только наоборот Но вряд ли ты захочешь тащить целый web-framework Вот тут есть пример, как самому написать http://www.fssnip.net/4I/title/sscanf-parsing-with-format-strings
спасибо, примерно то, что мне и нужно
я такое написюкал и юзаю для валидаций
Помню, когда задавал аналогичный вопрос, мне ответили "Кажется ты хочешь переизобрести регексы"
Помимо того, что это типикал регулярки, какие могут быть типы в строке?
Ну я так понял, что человек хочет ещё на уровень выше подняться и сказать, что тут у меня тип имейл, а какая стейтмашина описывает парсинг — это явно не указывается.
Обсуждают сегодня