Replies (27)
- @0xd34df00d:@Fess Нет, я хочу сравнивать строки как портажи.
- @0xd34df00d:from idead, 13 months ago, in reply to /7
- @Tishka17:@0xd34df00d посмотрим, если проснусь пораньшеfrom SquirrellQD, 13 months ago, in reply to /8
- @A2K:@0xd34df00d я даже когда-то писать что-то похожее. Тебе надо просто сравнение версий на с++?from Laptop1605EB21, 13 months ago, in reply to /5
- @0xd34df00d:@A2K Да. Можно использовать Qt (те же QRegExp, ибо регекспы где-то здесь используются, да и QString всяко няшнее std::string). В идеале — функция возвращает true, если одна версия меньше другой по правилам, реализованным в этом отрывке говнокода, и false иначе.from idead, 13 months ago, in reply to /15
- @A2K:@0xd34df00d а почему именно версий портежей?from Laptop1605EB21, 13 months ago, in reply to /17
- @A2K:@0xd34df00d обычно версии программ не нумеруют как pre-1.2.3-rc4from Laptop1605EB21, 13 months ago, in reply to /19
- @A2K:@0xd34df00d я это в коде вижу по твоей ссылкеfrom Laptop1605EB21, 13 months ago, in reply to /21
- @A2K:@0xd34df00d о, я нашел, сравнение версий арчевских пакетов: bitbucket.orgfrom Laptop1605EB21, 13 months ago, in reply to /23
- @A2K:@A2K о, а вот такое code.google.com тебя не устроит?from Laptop1605EB21, 13 months ago, in reply to /25
- @ndtimofeev@jabber.ru:Лет пять назад я реализовал сравнение версий на баше (ну понятное дело слака, upgradepkg которому пох на версии вообще, постоянные случайные обновления новой версии на старую). На баше потому что тогда ничего больше не умел. После долгого ковыряния вышла одна рекурсивная функция, которая делила версию по разделителю (которые были выстроены в определённое старшинство и перебирались все по очереди), а дальше регулярками пыталось понять что же это такое. Если понимало, то применяло метод сравнения для данного типа строковых литералов. Если не понимало, то делило дальше. Работала эта штука настолько медленно (по сути её надо было писать на sed'е потому что им там делалось всё), что я с досады выучил perl.from Kopete, 13 months ago