From 82153f742d92fe36bc3fd2ade838c117572c1e34 Mon Sep 17 00:00:00 2001 From: AliRN Date: Fri, 24 Nov 2023 23:43:25 +0300 Subject: [PATCH] fixBug validator string regex --- .streamlit/config.toml | 12 ------------ project/source/string_processing/utilities.py | 3 ++- project/source/string_processing/validator_string.py | 6 +++--- 3 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 .streamlit/config.toml diff --git a/.streamlit/config.toml b/.streamlit/config.toml deleted file mode 100644 index ea7316d..0000000 --- a/.streamlit/config.toml +++ /dev/null @@ -1,12 +0,0 @@ -[theme] -primaryColor="#ffffff" -#backgroundColor="#24272E" -#backgroundColor="#6B6B6B" -#backgroundColor="#243119" #1 -#backgroundColor="#082c3c" #2 -#backgroundColor="#ffffff" #3 -#backgroundColor="#002B3A" #4 -secondaryBackgroundColor="#ffffff" -#textColor="#008FD0" -textColor="#000000" -font="sans serif" diff --git a/project/source/string_processing/utilities.py b/project/source/string_processing/utilities.py index 88e79c1..f4cdb53 100644 --- a/project/source/string_processing/utilities.py +++ b/project/source/string_processing/utilities.py @@ -9,7 +9,8 @@ def find_start_end(string, pattern): - print(f"{string=} {pattern=}") + for elem in r"\.^$*+?{}[]|()": + pattern = pattern.replace(f"{elem}", rf"\{elem}") matches = re.finditer(pattern, string) start_end_list = [] for match in matches: diff --git a/project/source/string_processing/validator_string.py b/project/source/string_processing/validator_string.py index c32bd26..3d480e1 100644 --- a/project/source/string_processing/validator_string.py +++ b/project/source/string_processing/validator_string.py @@ -16,7 +16,7 @@ pattern_digit = re.compile(r"\+?\d+") pattern_data = re.compile( - r"\b(\d{1,2}\W\d{1,2}\W\d{2,4}|\d{2,4}\W\d{1,2}\W\d{1,2})\b" + r"\b(\d{1,2}\W\d{1,2}\W\d{2}|\d{2}\W\d{1,2}\W\d{1,2}|\d{1,2}\W\d{1,2}\W\d{4}|\d{4}\W\d{1,2}\W\d{1,2})\b" # "/(0?[1-9]|[12][0-9]|3[01])[\/\-\.](0?[1-9]|1[012])[ \/\.\-]/" ) @@ -177,8 +177,8 @@ def replace_day(raw_text: str) -> str: if __name__ == "__main__": - raw_text = " dssssssssssssssssd 8(929) 296 14 84 sdsdsd@sds.ru завтра/вчера 20 12 36" + raw_text = " Я, инженер Петров Петр Петрович,проживающий по адресу ул. Кирова 17б в Перми не вышел на работу 20.04.2021 г., в Промобот поскольку плохо себя чувствовал в течение всего сегодняшнего дня. Я не стал оформлять листок нетрудоспособности, поскольку посчитал, что уже 21/04/2021 г. смогу приступить к работе, что и произошло. О своей болезни я сообщил руководителю Сидорову Сергею по почте sidorov@gmail.com 20-04-2021 г. примерно в 14-00, когда почувствовал себя лучше и смог сделать звонок по номеру 8(999)-999-99-99." raw_text = preprocess_str(raw_text) res = string_validator(raw_text) preprocess_for_model(raw_text) - # print(res) + print(res)