Extract the text in between a prefix and surfix.
        
        :param prefix: the prefix
        :type prefix: str
        
        :param surfix: the surfix
        :type surfix: str
        
        :param maxlen: the max matched string length
        :type maxlen: int
        
        :param text: text body
        :type text: str

def extract_by_prefix_surfix(prefix, surfix, maxlen, text):
        """Extract the text in between a prefix and surfix.
        
        :param prefix: the prefix
        :type prefix: str
        
        :param surfix: the surfix
        :type surfix: str
        
        :param maxlen: the max matched string length
        :type maxlen: int
        
        :param text: text body
        :type text: str
        """
        pattern = r"""(?<=%s)[\s\S]{1,%s}(?=%s)""" % (prefix, maxlen, surfix)
        return re.findall(pattern, text)