![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Эмуляция PHP parse_url в Object PascalDelphi , Интернет и Сети , URL
Если вам нужно создать генератор карты сайта на Object Pascal и вам нужна функция или библиотека для эмуляции функции PHP parse_url, то вы можете рассмотреть несколько вариантов. Использование регулярных выражений Один из вариантов - использовать регулярные выражения для разбора URL. В RFC 2396 перечислен следующий регулярный выражение для разбора URI:
Где:
Для URL
Регулярное выражение довольно простое и не использует особые функции, которые должна предоставлять библиотека регулярных выражений, совместимая с вашим паскалевским дистрибутивом. Поэтому вам просто нужно выбрать подходящую библиотеку и приступить к работе. Использование TIdURI из Indy Если вы не хотите писать регулярное выражение самостоятельно, вы можете рассмотреть использование класса TIdURI из Indy. TIdURI - это дочерний класс TObject, который encapsulates Universal Resource Identifier, как описано в документе Internet Standards:
TIdURI предоставляет методы и свойства для сборки и разборки URI с помощью компонентных частей, образующих URI, включая: Протокол, Хост, Порт, Путь, Документ и Закладка. Если вы используете wininet.dll, вы также можете использовать их API InternetCrackUrl. Использование URIParser из Freepascal Freepascal имеет модуль URIParser с функцией ParseURI. Пример использования можно найти в одном из примеров в Freepascal's source или в старом примере, который проще понять. Вывод В зависимости от ваших требований и предпочтений, вы можете выбрать любой из вышеперечисленных вариантов для эмуляции PHP parse_url в Object Pascal. Регулярные выражения - это простой и гибкий подход, TIdURI из Indy - это готовый к использованию класс, а URIParser из Freepascal - это специализированный модуль для разбора URI. Этот текст является описанием различных способов эмуляции функции PHP parse_url в Object Pascal, в том числе с использованием регулярных выражений, класса TIdURI из Indy, и модуля URIParser из Freepascal. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |