Обсудим?

Сидит рекрутер, скучает. САП сам все за него делает, даже поработать нечего. Заявочки на поиск от руководителей сами на внутренний портал, внешние сайтики и КА валятся. Отзывы обратно руководителям отправляются. Все интегрировано. Резюме само считывается из почты [email protected], разбирается по косточкам и в базу кандидатов сохраняется. Собеседования с телефончика назначаются, комнатки сами бронируются. Тоска, а не жизнь.

Со всем понятно, но резюме? Мы знаем, что почти любое резюме состоит из типового скелета, где есть персональная информация, контакты, стаж работы. Каждую часть можно формализовать, разобрать на составляющие и оценить множество вариантов оформления. Попробуем подумать как сделать распознавание резюме в SAP HCM?

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

Мы понимаем, что контактный телефон имеет ограниченное количество форматов, и он рядом с именем и адресом электронной почты (если только это не референсы, но в России их почти никто не пишет).

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

А как найти все это в тексте? Да тоже элементарно. Есть такая штука как регулярные выражения regexp. Читать тут.

А вот так с ними работать в ABAP:
FIND REGEX ‘A*B’ IN ‘ABAP’.
REPLACE ALL OCCURRENCES OF REGEX regpattern
IN text
WITH new
REPLACEMENT COUNT cnt.

Или вот так можно найти любой адрес электронной почты в тексте:

Data v_pattern = ‘^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$’. lr_matcher = cl_abap_matcher=> create (pattern = v_pattern Text = ’[email protected]’). CALL METHOD lr_matcher->match RECEIVING success = v_sucess. IF v_sucess = abap_false. Message ‘Invalid email id’ TYPE ‘I’. ENDIF.

(с) Примеры коды взяты с SDN. Автор
Author: Shaira Madhu
Company: Applexus Software Solutions (P) Ltd
Created on: 25 October 2010

Что вы думаете по этому поводу?