Поиск по сайту:
Нет ничего тягостнее сознания только что сделанной глупости (И.С. Тургенев).

Что означает «parsing» в программировании?

04.10.2017
Что именно означает «parsing» в программировании?

Parsing в Java-методах означает, что метод принимает входные данные из строки и возвращает другой тип данных.

Определение синтаксического парсинга

Фактическое определение «синтаксического парсинга» в Викисловаре: «Разделить файл или другие входные данные на части, которые можно легко сохранить или ими манипулировать». Таким образом, мы разделяем строку на части, а затем распознаем части, чтобы преобразовать их в нечто более простое, чем строка.

Разбор целого числа

Примером может служить функция parseInt(). Для этого потребуется такой ввод, как «123», который будет строкой, состоящей из значений символов 1, 2 и 3. Затем он преобразует это значение в целое число 123, которое является простым числом, которое можно сохранить и обработать как целое число.

Мы можем понять, почему вы можете быть озадачены этим простым примером, хотя, поскольку строка «123» не имеет очевидных частей.

Разбор даты

Вот лучший пример, включающий парсинг даты из строки:

SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
Date date = format.parse("2016-04-23");

 

В этом примере показан формат даты, который на самом деле имеет узнаваемые части:

  • yyyy – год
  • – это буквальная тире
  • mm – месяц
  • – это еще одна буквальная тире
  • dd – день

Java анализирует строку даты для вас, разбивая ее на предопределенный шаблон частей и распознавая детали. Затем функция parse выводит объект даты, который легче хранить и манипулировать, чем строка даты.

Разбор целого языка

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

Примерами этого могут быть:

  • Разбор шестнадцатеричного числа, например «0xFF», разбивая его на 0, x и ряд символов от 0 до 9 и af или AF.
  • Разбор чисел с плавающей запятой, таких как «-1.23f», разбив его на знак, целочисленную часть, десятичную точку, дробную часть, затем букву f для float.

Небольшие структуры, подобные этому, определены на всем языке, поэтому появляются эти функции разбора. Нет никаких ограничений для функций этого типа, которые могут быть созданы, поскольку для синтаксического анализа может быть создано бесконечное множество новых синтаксических определений.

Однако Java имеет тенденцию ограничиваться вариациями известного синтаксиса, такими как integer, float и date, которые предопределены для него.

Зачем использовать функции синтаксического анализа или парсинга?

Поскольку пользовательский ввод почти всегда предоставлен в виде строк. Прежде чем вы сможете преобразовать его в тип данных Java, с которым вы действительно можете работать, вам обычно нужно разбирать его.

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Загрузка...
Поделиться в соц. сетях:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

Читайте также

Спасибо!

Теперь редакторы в курсе.