построение грамматики для описания имен файлов с соответствующими метаданными - PullRequest
0 голосов
/ 06 июня 2019

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

Ниже приведен пример списка:

Circular Letter No.1886-Rev.1 - Implementation Of Resolution A.600(15) - Imo Ship Identification NumberScheme.pdf
Circular Letter No.1886-Rev.2 - Implementation of resolution A.600(15) - IMO ship identification numberscheme.pdf
Circular Letter No.1886-Rev.3 - Implementation Of Resolution A.600(15) - Imo Ship Identification Number Scheme (Secretariat).pdf
Circular Letter No.1886-Rev.4 - Implementation Of Resolution A.600(15) - Imo Ship Identification NumberScheme (Secretariat).pdf
Circular Letter No.1886-Rev.5 - Implementation Of Resolution A.1078(28) - Imo Ship Identification Number Scheme (Secretariat).pdf
Circular Letter No.1886-Rev.6 - Implementation Of Resolution A.1078(28) - Imo Ship Identification Number Scheme (Secretariat).pdf
Circular Letter No.2047 - Subject Amendments to tables A-II1 and A-II2 of the Seafarers' Training, Certification and....pdf
Circular Letter No.2086 - Subject Operating Agreement on the International Mobile SatelliteOrganization (Inmarsat) -....pdf

Разумеется, существует больше вариаций, чем в именах файлов, но это достаточно хороший пример для начала.

Я хотел бы описать следующие части в EBNF или другой обычной грамматике, которую я мог бы использовать с Nearley (https://nearley.js.org/);

  1. Циркулярный номер
  2. Если документномер ревизии и ревизии (представленный -REV. номером в первых 6 примерах)
  3. Заголовок, следующий за - после номера ревизии или циклического номера
  4. ЕСЛИ заглавие неполное, представленный ... в конце.

Я полагаю, что когда у меня есть этот пример, я могу построить другие необходимые вещи.

...