Кроссплатформенный открытый движок на Java, позволяющий создавать 2D и 3D игры под различные платформы, среди которых: Android, HTML5, Windows, Linux, iOS.
The packer library provides an efficient set of functions to pack and unpack data (compress/decompress). The pack/unpack routines are based on the excellent JCalG1 algorithm and are integrated to PureBasic (no external DLL needed).
Но это, я думаю, и так всем известно. Проблема заключается в том, что в паке у файлов нет имен, как в архивах. Но эту проблему решить несложно. Достаточно при упаковке создать список файлов в паке. Потом его можно включить в код (посредством IncludeBinary) или читать с диска при распаковке.
В примере показано для случая урлов заключенных в апострофы. Для случая с кавычками используйте Chr(34)
Define subject.s = "<a href='http://site1.ru'>Site 1</a> Any text <a href='http://site2.ru/?a=f&b=5'>Site 2</a>"
Define pattern.s = "http://[^\']{2,}"
If CreateRegularExpression(0, pattern)
Dim Result$(0)
NbFound = ExtractRegularExpression(0, subject, Result$())
For k = 0 To NbFound-1
Debug Result$(k)
Next
Else
Debug RegularExpressionError()
EndIf
Пример использования регулярного выражения, извлекающего все адреса электронной почты с доменом любого уровня из произвольной строки, даже если они обрамлены любыми служебными знаками.
Define subject.s = "'Vasiliy Ivanovitch' y@mail.org.kol.ru (*ColdplayC*) 'l@mbr.uk.com' kol@kol.com serjio k <orba@kimori.org.ua>, serjio k <orba1@kimori.org.ua>"
Define pattern.s = "[\.\-_A-Za-z0-9]+?@[\.\-A-Za-z0-9]+?[\.A-Za-z0-9]{2,}"
If CreateRegularExpression(0, pattern)
Dim Result$(0)
NbFound = ExtractRegularExpression(0, subject, Result$())
For k = 0 To NbFound-1
Debug Result$(k)
Next
Else
Debug RegularExpressionError()
EndIf