Articles of синтаксический анализ

Существуют ли библиотеки грамматики выражений (PEG) для Javascript или PHP?

Я обращаюсь к формализму грамматики выражения Parsing Expression для описания доменных языков, но до сих пор код реализации, который я нашел, был написан на таких языках, как Java и Haskell, которые не поддерживают веб-сервер в среде совместного размещения, что моя организация должен жить. Кто-нибудь знает какие-либо библиотеки PEG или генераторы Parser PackRat для Javascript или […]

Каков алгоритм анализа выражений в нотации infix?

Я хотел бы анализировать логические выражения в PHP. Как в: A and B or C and (D or F or not G) Термины можно считать простыми идентификаторами. У них будет небольшая структура, но парсер не должен беспокоиться об этом. Он должен просто распознавать ключевые слова and or not ( ) . Все остальное – это […]

В PHP, что быстрее, большой оператор Switch или поиск ключа Array

В PHP что происходит быстрее, делая большой оператор switch или настраивая массив и просматривая ключ? Теперь, прежде чем вы ответите, мне хорошо известно, что для чистого поиска массив работает быстрее. Но это предполагает создание массива только один раз, а затем поиск его повторно. Но это не то, что я делаю – каждый прогон кода является […]

Ошибка анализа: синтаксическая ошибка, неожиданный $ end

Я получаю следующую ошибку: Ошибка синтаксиса: неожиданный $ end в /home/test/login_success.php в строке 20 heres мой код <?php $host="mysql.website.com"; // Host name $username="userma,e"; // Mysql username $password="passwrd1"; // Mysql password $db_name="mbs_orderstatus"; // Database name $tbl_name="mbs_users"; // Table name // Connect to server and select databse. mysql_connect("$host", "$username", "$password")or die("cannot connect"); mysql_select_db("$db_name")or die("cannot select DB"); // […]

Преобразовать точечный синтаксис как «this.that.other» в многомерный массив в PHP

Как следует из названия, я пытаюсь создать парсер и попытаться найти оптимальное решение для преобразования чего-либо из пространства имен точек в многомерный массив, так что s1.t1.column.1 = size:33% будет таким же, как $source['s1']['t1']['column']['1'] = 'size:33%';

PHP – проанализировать текущий URL-адрес

Мне нужно проанализировать текущий URL-адрес, чтобы в любом из этих случаев: http://mydomain.com/abc/ http://www.mydomain.com/abc/ Я могу получить возвращаемое значение «abc» (или любой текст в этой позиции). Как я могу это сделать?

Разбирайте все ссылки, которые содержат определенное слово в теге «href»

Возможный дубликат: Схват атрибута href элемента A Мне нужно разобрать все ссылки HTML-документа, содержащие какое-то слово (это всегда разные). Пример: <a href="/bla:bla">BLA</a> <a href="/link:link">BLA</a> <a href="/link:bla">BLA</a> Мне нужны только ссылки с «href = / link: ….», что лучший способ пойти на это? $html = "SOME HTLM "; $dom = new DomDocument(); @$dom->loadHTML($html); $urls = $dom->getElementsByTagName('a'); […]

Разбор плохо форматированного HTML в PHP

В моем коде я конвертирую некоторый стиль xls document в html с помощью openoffice. Затем я разбираю таблицы с помощью xml_parser_create . Проблема в том, что openoffice создает oldschool html с незакрытыми тегами <BR> и <HR> , он не создает doctypes и не цитирует атрибуты <TABLE WIDTH=4> . Анализаторы php, которых я знаю, не нравятся, […]

XML-разбиение на страницы с помощью PHP

Ниже приведен код, который я использую для анализа XML-файла, однако в файле много записей, и я хочу его разбивать на страницы и отображать 20 записей на странице. Я также хочу, чтобы ссылки на страницы находились внизу страницы, чтобы пользователи могли перейти на другие страницы. Это должно быть что-то вроде: если значение не указано, оно будет […]

Анализ XML с использованием PHP

Я постоянно сталкивался с проблемой разбора XML с PHP и не нашел «правильный путь» или, по крайней мере, стандартизованный способ анализа XML-файлов. Во-первых, я пытаюсь разобрать это: <item> <title>2884400</title> <description><![CDATA[ ><img width="126" alt="" src="http://img.ruphp.com/php/27319921.jpg" /> ]]></description> <link>http://www.last.fm/music/+noredirect/Beatles/+images/27319921</link> <author>anne710</author> <pubDate>Tue, 21 Apr 2009 16:12:31 +0000</pubDate> <guid>http://www.last.fm/music/+noredirect/Beatles/+images/27319921</guid> <media:content url="http://img.ruphp.com/php/Beatles+2884400.jpg" fileSize="13065" type="image/jpeg" expression="full" width="126" height="126" /> <media:thumbnail url="http://img.ruphp.com/php/27319921.jpg" […]