From c9f575e8a657b046b55bb366324a9aa584dccce0 Mon Sep 17 00:00:00 2001 From: Johannes Hentschel Date: Sun, 21 Jan 2024 15:40:21 +0100 Subject: [PATCH] refactor: adds SLICE_INTERVAL_REGEX constant --- src/ms3/utils/constants.py | 5 +++++ src/ms3/utils/functions.py | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/ms3/utils/constants.py b/src/ms3/utils/constants.py index e1324107..b3a97655 100644 --- a/src/ms3/utils/constants.py +++ b/src/ms3/utils/constants.py @@ -318,6 +318,11 @@ KEYSIG_DICT_ENTRY_REGEX = r"(\d+): (-?\d+)(?:, )?" TIMESIG_DICT_ENTRY_REGEX = r"(\d+): (\d+\/\d+)(?:, )?" +SLICE_INTERVAL_REGEX = ( + r"[\[\)]((?:\d+\.?\d*)|(?:\.\d+)), ((?:\d+\.?\d*)|(?:\.\d+))[\)\]]" +) +"""Regular expression for slice interval in open/closed notation and any flavour of floating point numbers, +e.g. [0, 1.5) or (.5, 2.]""" MS3_HTML = { "#005500": "ms3_darkgreen", diff --git a/src/ms3/utils/functions.py b/src/ms3/utils/functions.py index 123ff3d0..b72a196a 100644 --- a/src/ms3/utils/functions.py +++ b/src/ms3/utils/functions.py @@ -67,6 +67,7 @@ MS3_HTML, MS3_RGB, SCORE_EXTENSIONS, + SLICE_INTERVAL_REGEX, STANDARD_COLUMN_ORDER, STANDARD_NAMES, STANDARD_NAMES_OR_GIT, @@ -2451,7 +2452,7 @@ def parse_interval_index_column(df, column=None, closed="left"): ------- :obj:`pandas.IntervalIndex` """ - iv_regex = r"[\[\(]([0-9]*\.[0-9]+), ([0-9]*\.[0-9]+)[\)\]]" + iv_regex = SLICE_INTERVAL_REGEX if column is None: iv_strings = df.index else: