Как извлечь информацию из моего документа с помощью REGEX?
Практические примеры
В данной статье мы продемонстрируем вам, как с помощью регулярных выражений с несколькими элементами в PaperOffice можно извлекать любые данные из документа и автоматически указывать их в качестве метаданных документа.
Ниже мы создали образец документа, в котором есть определенная дата. В этом документе есть счет-фактура. Шаблон даты в нашем документе форматируется следующим образом:
Месяц, состоящий из букв, причем первая буква всегда заглавная, за которым следует пробел, затем день, за которым следует запятая, еще один пробел и затем год.
Например: Sep 20, 2019 или Mär 05, 2022
Чтобы извлечь эту дату, мы можем использовать следующее регулярное выражение (REGEX):
([A-Z][a-zä]{2})\s(0[1-9]|[12][0-9]|3[01]),\s(20\d{2})
Разделим выражение по группам. Группы разделяются простыми скобками ().
В первой группе мы ищем 3 буквы месяца: ([A-Z][a-zä]{2})
([A-Z][a-zä]{2})\s(0[1-9]|[12][0-9]|3[01]),\s(20\d{2})
Извлечение названия месяца
- [A-Z] Эта строка означает, что мы ищем заглавную букву от A до Z. Например, буква «S» из Sept. Стоит отметить, что регистр учитывается отдельно.
- [a-zä]{2} Эта строка означает, что мы ищем две строчные буквы от a до z (и ä для названия месяца на немецком языке «Marz»). Это будет р из «Sep» или ä из «Mär».
Затем мы ищем пробел с помощью этой строки: \s
([A-Z][a-zä]{2})\s(0[1-9]|[12][0-9]|3[01]),\s(20\d{2})
Извлечение дня
Во второй группе ищем обозначение дня числами: (0[1-9]|[12][0-9]|3[01])
([A-Z][a-zä]{2})\s(0[1-9]|[12][0-9]|3[01]),\s(20\d{2})
Указание на день должно разделиться на 3 разные инструкции.
Так как мы не знаем, какие даты могут присутствовать в документе, может быть первое число (01) или последнее число (31) месяца, необходимо указать соответствующие варианты.
Они разделяются символом“|”.
Пример: (1|2|3) = 1 или 2 или 3.
В квадратных скобках следует перечисление допустимых символов. Несколько квадратных скобок соответствуют нескольким символам.Если выражение описывает несколько символов, они просто объединяются вместе. Затем ввод сравнивается слева направо с вашим выражением.
Естественно, не все числа должны быть перечислены. Весь заключенный в круглые скобки раздел описывает лишь один символ.
- 0[1-9] Эта строка означает, что число может начинаться с «0», за которым может следовать число от 1 до 9. Таким образом, мы получаем любое число от 01 до 09.
- [12][0-9] Эта строка означает, что число может начинаться с «1» или «2», за которым может следовать любое число от 0 до 9. Результатом будет любое число от 10 до 29.
- 3[01] Эта строка означает, что число может начинаться с «3», за которым может следовать «0» или «1». Результатом может быть 30 или 31.
Строка ищет числовой шаблон, начинающийся с нуля. Если ваш документ обычно содержит дату «5 марта 2022 г.», то есть без числа «0» перед числом «5», то «0» опускается в этой строке.
После определения вариантов для дня необходимо указать выражение для года.
Теперь мы ищем запятую и пробел: ,\s
([A-Z][a-zä]{2})\s(0[1-9]|[12][0-9]|3[01]),\s(20\d{2})
Извлечение года
В последней группе мы ищем год: (20\d{2})
([A-Z][a-zä]{2})\s(0[1-9]|[12][0-9]|3[01
Чтение номера заказа с помощью REGEX
В качестве дополнительного примера мы хотим извлечь номер заказа из документа.
Номер заказа в нашем документе имеет следующий формат:
Он всегда начинается с прописных букв XYB, затем следует дефис, за ним идут 8 цифр, еще один дефис и в конце 3 случайных прописных буквы.
Примеры номеров заказов:
XYB-12316723-LSH
XYB-98456723-JRD
Чтобы извлечь этот номер заказа, мы можем использовать следующее регулярное выражение:
XYB-\d{8}-[A-Z]{3}
Давайте разберем выражение по частям.
Сначала мы ищем первые 3 прописные буквы с символом дефиса: XYB-
XYB-\d{8}-[A-Z]{3}
Затем мы ищем 8 цифр, за которыми следует еще один дефис: \d{8}-
XYB-\d{8}-[A-Z]{3}
Символ \d, как уже указано, означает цифру от 0 до 9, а \d{8} ищет восьмизначное число.
И, наконец, мы ищем 3 произвольные прописные буквы: [A-Z]{3}
XYB-\d{8}-[A-Z]{3}
Таким образом, PaperOffice из следующих номеров заказов:
XYB-12316723-LSH
XYB-98456723-JRD
XYB-975432671829
ZYB-12342176-ZHD
распознает первые два номера заказов XYB-12316723-LSH и XYB-98456723-JRD
.
Мы подготовили ссылку на Regex101 для этого примера, где перечислены 4 примера соответствующих регулярному выражению номеров заказов. Вы увидите, что из предложенных номеров заказов только два соответствуют нашим требованиям.
Чтение артикульного номера с помощью REGEX
Артикульный номер в нашем документе имеет следующий формат:
Он всегда начинается с двух прописных букв, затем следует дефис, за которым идут 6 цифр.
Примеры артикульных номеров:
MS-863398
DS-452829
Чтобы извлечь эти артикульные номера, мы можем использовать следующее регулярное выражение:
[A-Z]{2}-\d{6}
С помощью PaperOffice вы можете цифровизировать ваши документы и интегрировать их в ваши системы для автоматизации извлечения данных из счетов и других документов, без необходимости писать и поддерживать множество кодов.
Свяжитесь с нами, чтобы обсудить ваши случаи использования и узнать больше о том, как PaperOffice может помочь вам стать еще более конкурентоспособными в цифровую эпоху.
Начните действовать, это проще, чем вы думаете.
Есть сомнения, что вы справитесь? Прочтите публикации наших клиентов о внедрении PaperOffice в ваш бизнес и убедитесь в его простоте, или просто запросите установку установку для тестирования.
FAQs
В заключение, мы ответим на несколько часто задаваемых вопросов на данную тему. "":
Для кого подходит бумажный офис?
Быстрый и простой ответ на этот вопрос: для любой компании. Все отрасли и размеры предприятий, от малого и среднего бизнеса до стартапов и крупных компаний, извлекают выгоду из бумажного офиса. Особенно ценна эта переход для малых и средних предприятий: путем сокращения затрат на обработку высвобождаются средства, необходимые для дальнейшего развития бизнеса.
Могу ли я использовать облачного провайдера DMS для организации моего бумажного офиса в компании?
Нет. Еще один фактор, который стал широко обсуждаться, особенно с принятием в 2018 году Общего регламента о защите данных (GDPR), – это конфиденциальность данных. Решения и программное обеспечение DMS используются для обработки, управления и хранения документов, которые часто содержат чувствительные персональные данные. Нарушение GDPR влечет за собой серьезные штрафы от законодателя.
Заключение
Преимущества оправдывают затраты и издержки
Работа в цифровом формате и перевод старых документов в новую эпоху будет лучшей вложенией средств для экономии невероятно большого количества времени, денег и нервов в будущем.
Вам нужен человек, который в этом разбирается
Вам не нужен собственный IT-специалист, чтобы использовать все преимущества цифровизации.
Вам нужен правильный партнер, который, основываясь на своем опыте, может реализовать то, что вам нужно. Избегайте паникеров и выбирайте тестовые установки вместо красивых презентаций PowerPoint, без реального тестирования.Оборудование уже в большинстве случаев имеется
Опыт показывает, что практически каждая фирма и компания имеет копировальный аппарат, который не использует все свои возможности. Эти устройства хорошо сканируют большие объемы документов, не требуют удаления скрепок и могут служить основой для старта в цифровой формат без вложений в сканер.
Дешевле, чем ожидалось, с правильной системой DMS
Избегайте расходов с DMS / ECM-системами, при использовании которых вы полностью зависите от производителей. Не ищите компромиссов в отношении собственных возможностей администрирования, таких как обучение документов и настройка. Если вам нужна помощь, производитель обязательно поможет вам, но оставайтесь самостоятельными и независимыми.
Автоматизация в цифровом формате - это будущее
Процессы будут работать в будущем полностью автоматически и одинаково.
Получили счет? Рабочий процесс запускается и все идет по определенному пути.
Нужно просмотреть тысячи папок? Нет проблем, ведь у вас есть своя собственная поисковая система Google!