Регулярные выражения (примитивы)

Пред.  Начало  След.

  Справочник переменных, применяемых в шаблонах для разбора текстовых полей платежных документов.

Наименование - имя переменной, которое применяется в выражениях шаблонов. Задается пользователем.
Приемник - обозначение показателя (БК, л/с и т.п.), которому будет присвоено значение при разборе шаблоном. Это фиксированный системный перечень. Разделители не имеют приемника.
Выражение - правило, которым должно удовлетворять значение показателя. Задается в виде формул регулярных выражений ОС Windows, в которых могут использоваться другие примитивы (их наименования, не приемники). Например примитив LS0302 ссылается на примитив KODBP (выражение \d{5}KODBP\d - результирующая формула \d{5}[А-ЯA-Z0-9]\d{4}\d ).

 

  Под один и тот же показатель может быть несколько примитивов, с разными правилами - общим у них будет "Приемник". Например, см примитывы для КОСГУ: их несколько с разными правилами заполнения (для расходов KOSGUR, доходов KOSGUD, источников KOSGUI, и общий EKLASS), но приемник у них единый EKLASS.

 

 

  Если в выражении примитива применяется другой примитив и он необязательный, то все [ ] воспринимаются как "необязательность", что приводит к ошибкам распознавания. В этом случае следует все выражения в [ ] вынести в отдельный примитив.

 

  Например требуется примитив ADDMY7 с исходным выражением \d{3}[0-9А-Я]{3}[00\D] , где [0-9А-Я]{3} - последовательность из любых цифр и русских букв длиной 3 символа, [00\D] - необязательный элемент из двух нулей и буквы. Следует создать два новых примитива: MYPR1 = [0-9А-Я]{3} ,  MYPR2 = 00\D . И результирующее выражение для ADDMY7 будет \d{3}MYPR1[MYPR2] .

 

 

  Перечень примитивов, КБК выделена цветом. Список отсортирован по именам переменных (третья графа).

 

Примечание

Приемник

Наименование переменной

Выражение

Дополнительная классификация. Размерность до 20 символов, буквы и цифры.

ADDKLASS

ADDKLASS

2\d-[FА-Я0-9]{5}-[А-Я0-9]{5}-[А-Я0-9]{5}|\d{2}-[А-Я0-9]{3}-[А-Я0-9]{5}|\d{2}-[А-Я0-9]{3}|[А-Я0-9\.]{1,20}

Код дополнительной классификации получателя платежа

ADDKLASSRCP

ADDKLASSRCP

\d{2}-[А-Я0-9]{3}-[А-Я0-9]{5}|\d{2}-[А-Я0-9]{3}|[А-Я0-9\.]{1,20}

Номер банковской карты.  Размерность 16 цифр, возможно разбитых на группы по 4 цифры через пробел.

CARDNUM

CARDNUM

\b\d{4}\s*\d{4}\s*\d{4}\s*\d{4}\b

Дата, в формате ЧЧ.ММ.ГГГГ или ЧЧ.ММ.ГГ

DATE

DATE

(?:0[1-9]|[1-2][0-9]|3[01])\.(?:0[1-9]|1[0-2])\.(?:\d{4}|\d{2})

КОСГУ

EKLASS

EKLASS

\d{2}[0-9АВКТZABKT]

Код Объекта АИП

FAIP

FAIP

\d{14}

Шаблон номера л/с

При электронном приеме документов (платежки, заявки, выписки) номера лицевых счетов проверяются на соответствие данному шаблону (при наличии примитива).

FINDLS

FINDLS

\b(?:л[\/\\\.]?[сc][\.]?)?\s*(\d{5}[0-9a-zа-яА-Я]{6})(?:[^0-9]|$)

ФИО, в формате "Иванов Иван Иванович" либо "Иванов И.И." .

FIO

FIO

[А-Я]+\s+[А-Я]+\s+[А-Я]+|[А-Я]+\s+[А-Я]\.?\s*[А-Я]\.?

БК: Ведомство

GLAVA

GLAVA

\d{3}

ИНН, 10 либо 12 цифр

INN

INN

\d{10}|\d{12}

БК: Код БК доходов или БК источников

KDOH

KDOH

\d{20}

Код УБП

KODBP

KODBP

KODBP8|KODBP5

Код УБП 5 значный, в первом символе разрешены и буквы.

KODBP

KODBP5

[А-ЯЁA-Z0-9]\d{4}

Код УБП 8 значный, в первом символе разрешены и буквы.

KODBP

KODBP8

[А-ЯЁA-Z0-9]{4}\d{4}

Не применяется (устар.)

KODFP

KODFP

\d{1,3}

БК: КОСГУ БК доходов

EKLASS

KOSGUD

(?!171)[1]\d[0-9АВКТZABKT]|4[1234][0-9АВКТZABKT]

БК: КОСГУ БК источников

EKLASS

KOSGUI

[6-8]\d[0-9АВКТZABKT]|[5](?!30)\d[0-9АВКТZABKT]|410|310|171

БК: КОСГУ БК расходов

EKLASS

KOSGUR

[23]\d[0-9АВКТZABKT]|530

02 л/с бюджета, 11 символов

LS02

LS02

02\d{3}[А-ЯA-Z0-9]\d{5}

л/с учреждения, 11 символов

LS0302

LS0302

\d{5}KODBP5\d

л/с учреждения получателя платежа, 11 символов

LS0302RCP

LS0302RCP

\d{5}[А-ЯA-Z0-9]\d{4}\d

Раздел л/с НУБП/ЮЛ

LSRAZD

LSRAZD

[А-ЯA-Z0-9]{1,20}

Не применяется (устар.)

MBO

MBO

\d{1,2}

Учетный номер БО, до 19 знаков

NBO

NBO

[А-ЯЁA-Z0-9-]{1,19}

Учетный номер ДО, 23 знака.

NDO

NDO

KODBP8\d{2}[А-ЯA-Z0-9]{9}\d{3}

Реестровый номер контракта, 19 либо 13 знаков.

NGK

NGK

\d{19}|\d{13}

Номер документа, до 20 знаков. Применяется для создания "пустого" шаблона.

NUMBER

NUMBER

(?!\.|\-|\\|\/)[А-Я0-9\.\-\\\/]{1,20}

БК: Программы и непрограммная деятельность

PRG

PRG

[А-Я0-9\.]{1,20}

БК: Стратегические цели и задачи

PRP

PRP

[А-Я0-9\.]{1,20}

Комплексное регулярное выражение из нескольких примитивов

RASH1

RASH1

RASHKLASS [ \1 ADDKLASS] SEPSUM SUMMA [ \1 NBO [ \1 MBO]]

Комплексное регулярное выражение из нескольких примитивов

RASH1

RASH1K

RASHKLASSK [ \1 ADDKLASS] SEPSUM SUMMA [ \1 NBO [ \1 MBO]]

Комплексное регулярное выражение из нескольких примитивов

RASH1M

RASH1M

(?:; RASHKLASSM [ \1 ADDKLASS] SEPSUM SUMMA [ \1 NBO [ \1 MBO]])+

Комплексное регулярное выражение из нескольких примитивов

RASH1M

RASH1MK

(?:; RASHKLASSMK [ \1 ADDKLASS] SEPSUM SUMMA [ \1 NBO [ \1 MBO]])+

Комплексное регулярное выражение из нескольких примитивов

RASH2

RASH2

RASHKLASS SEPSUM SUMMA [ \1 NBO \1 MBO][\1 KODFP]

Комплексное регулярное выражение из нескольких примитивов

RASH2

RASH2K

RASHKLASSK SEPSUM SUMMA [ \1 NBO \1 MBO][\1 KODFP]

Комплексное регулярное выражение из нескольких примитивов

RASH2M

RASH2M

(?:; RASHKLASSM SEPSUM SUMMA [ \1 NBO \1 MBO][ \1 KODFP])+

Комплексное регулярное выражение из нескольких примитивов

RASH2M

RASH2MK

(?:, RASHKLASSMK [ \1 ADDKLASS] SEPSUM SUMMA )+

Комплексное регулярное выражение из нескольких примитивов

RASH3

RASH3

RASHKLASS [ \1 ADDKLASS] SEPSUM SUMMA

Комплексное регулярное выражение из нескольких примитивов

RASH3

RASH3K

RASHKLASSK [ \1 ADDKLASS] SEPSUM SUMMA

Комплексное регулярное выражение из нескольких примитивов

RASH3M

RASH3M

(?:, RASHKLASSM [ \1 ADDKLASS] SEPSUM SUMMA )+

Комплексное регулярное выражение из нескольких примитивов

RASH3M

RASH3MK

(?:; RASHKLASSMK SEPSUM SUMMA [ \1 NBO \1 MBO][ \1 KODFP])+

Комплексное регулярное выражение из нескольких примитивов

RASHKLASS

RASHKLASS

GLAVA (SEPKL) RAZDEL \1 STATIA \1 VID

Комплексное регулярное выражение из нескольких примитивов

RASHKLASS

RASHKLASSK

GLAVA (SEPKL) RAZDEL \1 STATIA \1 VID \1 KOSGUR

Комплексное регулярное выражение из нескольких примитивов

RASHKLASSM

RASHKLASSM

(?:(?:GLAVA \1 RAZDEL \1 STATIA \1 VID)|(?:RAZDEL \1 STATIA \1 VID)|(?:STATIA \1 VID)|(?:VID))

Комплексное регулярное выражение из нескольких примитивов

RASHKLASSM

RASHKLASSMK

(?:(?:GLAVA \1 RAZDEL \1 STATIA \1 VID \1 KOSGUR)|(?:RAZDEL \1 STATIA \1 VID \1 KOSGUR)|(?:STATIA \1 VID \1 KOSGUR)|(?:VID \1 KOSGUR)|(?:KOSGUR))

БК: Подраздел

RAZDEL

RAZDEL

\d{4}

БК: Региональная классификация

LOCAL

REGKLASS

[А-Я0-9\.]{1,20}

Разделитель кодов БК расходов: тире или запятая или точка .


SEPKL

[-,.]

Префикс номера л/с


SEPLS

[Л][/\\]?[СC]

Префикс суммы, допустимы знаки "=" либо "-".

SEPSUM

SEPSUM

[=-]

БК: Целевая статья

STATIA

STATIA

[0-9БВГДЖИКЛМНПСУФЦЧШЩЭЮЯADЕFGIJLNРQRSТUVWYZBKMHCАEPT]{10}

Сумма, в формате Ц.Д , где Ц - целая часть, до 12 символов; Д - десятичная часть, 2 знака; разделителем дробной части может быть: точка, запятая, тире.

SUMMA

SUMMA

\d{1,12}(?:[\.,-]\d{2})?

БК: Работы, услуги

SVC

SVC

[А-Я0-9\.]{1,20}

БК: Направления расходования ЦС

TFD

TFD

\d{7}

БК: Источники поступлений ЦС

TFS

TFS

\d{4}

УИН, размерность либо 20 либо 25 знаков.

UIN

UIN

[А-ЯA-Z0-9]{20}|[А-ЯA-Z0-9]{25}

БК: Вид расхода

VID

VID

\d{3}