'Finds progress information in the text using the
user-supplied regex and calculation instructions'

def _extract_progress(self, text):

    find = partial(re.search, string=text.strip())
    regex = unit(self.progress_regex)
    match = bind(regex, find)
    result = bind(match, self._calculate_progress)
    return result
