docs: def _normalize_string(self, text):
          '''Prepares incoming text for parsing:
          removes excessive spaces, tabs, newlines, etc.
          '''
          conversion = {
              # newlines
              '\r?\n': ' ',
              # replace excessive empty spaces
              '\s+': ' ',
              # convert all types of hyphens/dashes to a
              # simple old-school dash
              # from http://utf8-chartable.de/unicode-utf8-table.pl?
              # start=8192&number=128&utf8=string-literal
              '‐': '-',
              '‑': '-',
              '‒': '-',
              '–': '-',
              '—': '-',
              '―': '-',
          }
          for find, replace in six.iteritems(conversion):
              text = re.sub(find, replace, text, flags=re.UNICODE)
          return text