docs: def _preprocess_format(self):
          """
          Preprocess the format_string attribute.
  
          Splits the format string on each placeholder and returns a list of
          tuples containing substring, placeholder name, and function
          retrieving content for placeholder (getter).
  
          Relevant placeholder functions (getters) are taken from
          'placeholders' attribute which is a dict. If no matching placeholder
          is found in 'placeholders' getter is set to None. Getter and
          placeholder are also always set to None in first element of the
          returned list, because it never contain a real placeholder (read
          re.split documentation for further information).
          """
          format_split = re.split(r'(?<!\\)%', self.format_string)
          preprocessed_format = []
  
          for idx, substr in enumerate(format_split):
              if idx == 0:
                  getter = None
                  placeholder = None
              else:
                  pattern = MAIN_PATTERN.format(ph=r'\S')
                  try:
                      placeholder = re.match(pattern, substr).group('placeholder').strip('[]')
                  except AttributeError:
                      placeholder = None
  
                  if placeholder == 'S':
                      self.one_line = True
  
                  try:
                      getter = self.placeholders[placeholder]
                  except KeyError:
                      getter = None
                      substr = re.sub(pattern, '', substr)
  
              format_elem = (substr, placeholder, getter)
              preprocessed_format.append(format_elem)
  
          return preprocessed_format