code: def sanitize_excel_sheet_name(sheet_name, replacement_text=""):
      
  
      try:
          unicode_sheet_name = _preprocess(sheet_name)
      except AttributeError as e:
          raise ValueError(e)
  
      modify_sheet_name = __RE_INVALID_EXCEL_SHEET_NAME.sub(replacement_text, unicode_sheet_name)
  
      return modify_sheet_name[:__MAX_SHEET_NAME_LEN]
docs: Replace invalid characters for an Excel sheet name within
      the ``sheet_name`` with the ``replacement_text``.
      Invalid characters are as follows:
      |invalid_excel_sheet_chars|.
      The ``sheet_name`` truncate to 31 characters
      (max sheet name length of Excel) from the head, if the length
      of the name is exceed 31 characters.
  
      :param str sheet_name: Excel sheet name to sanitize.
      :param str replacement_text: Replacement text.
      :return: A replacement string.
      :rtype: str
      :raises ValueError: If the ``sheet_name`` is an invalid sheet name.