2009-11-24 5 views
39

Размышление - это то, что я натолкнулся на многое в развитии, но, как младший, это одна из тех вещей, которые я предполагаю, что в какой-то момент, когда это понадобится, я смогу повесить. В моем текущем проекте мне сказали найти и использовать парсер HTML для определенной функции, я нашел пару в Интернете, но что на самом деле делает парсер HTML? И что это означает, что нужно разбирать объект?Что такое синтаксический анализ?

+1

Я думаю [эта статья в Википедии] (http: //en.wikipedia.org/wiki/Parsing) является хорошей отправной точкой. – KB22

ответ

56

Parsing обычно применяется к тексту - акту чтения текста и преобразованию его в более полезный формат в памяти, «понимающий», что это означает в некоторой степени. Например, XML-парсер будет принимать последовательность символов (или байтов) и преобразовывать их в элементы, атрибуты и т. Д.

В некоторых случаях (в частности, компиляторы) существует разделение между lexical analysis и синтаксическим анализом, поэтому реальный " понимающая "часть парсера работает над последовательностью токенов (идентификаторы, операторы и т. д.), а не от сырых символов.

+2

+1 Ответ учебника. Вы должны написать книгу! : p – Mike

+5

Он уже написал книгу. C# in depth – rahul

+0

@Mike - он уже сделал – RobV

8

Вы можете начать здесь: http://en.wikipedia.org/wiki/Parsing. Короткая выдержка:

Синтаксические или синтаксический анализ представляет собой процесс анализа строки символов, либо на естественном языке или на языках программирования, в соответствии с правилами формальной грамматики. Термин «парсинг» приходит из латинских пар (orationis), что означает часть (речи).

+0

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. – DeanOC

+0

Согласовано и сделано! – Konamiman

1

Это процесс идентификации токенов [тегов, атрибутов] внутри HTML.

8

Анализ делает выбор данных и извлекает из него значимую информацию. С помощью синтаксического анализа HTML вы хотите прочитать некоторый html и вернуть структурированный набор тегов и текст

1

В информатике и лингвистике синтаксический анализ или, более формально, синтаксический анализ - это процесс анализа текста, сделанного последовательности токенов (например, слов), чтобы определить ее грамматическую структуру относительно данной (более или менее) формальной грамматики.

: 0)

Wikipedia

3

Parse(computers), by Dictionary.com:

Для анализа (строка символов), чтобы связать группы символов с синтаксическими единицами основной грамматики.

1

Не пытайтесь писать ничего, кроме тривиального анализатора самостоятельно. Есть хорошие инструменты для этого использования ANTLR и bison - это два, о которых я могу думать.

Если вы используете инструменты, вы сможете обратиться за помощью, когда вы столкнулись с проблемой.

cheers, Martin.

4

Парсер - это компонент компилятора/интерпретатора, который разбивает данные на более мелкие элементы для удобного перевода на другой язык. Парсер принимает входные данные в виде последовательности маркеров или программных инструкций и обычно строит структуру данных в виде дерева синтаксического анализа или абстрактного дерева синтаксиса.

Смежные вопросы