def _partialParseDateStd(self, s, sourceTime):
        """
        test if giving C{s} matched CRE_DATE, used by L{parse()}

        @type  s:          string
        @param s:          date/time text to evaluate
        @type  sourceTime: struct_time
        @param sourceTime: C{struct_time} value to use as the base

        @rtype:  tuple
        @return: tuple of remained date/time text, datetime object and
                 an boolean value to describ if matched or not

        """
        parseStr = None
        chunk1 = chunk2 = ''

        # Standard date format
        m = self.ptc.CRE_DATE.search(s)
        if m is not None:

            if (m.group('date') != s):
                # capture remaining string
                parseStr = m.group('date')
                chunk1 = s[:m.start('date')]
                chunk2 = s[m.end('date'):]
                s = '%s %s' % (chunk1, chunk2)
            else:
                parseStr = s
                s = ''

        if parseStr:
            debug and log.debug(
                'found (date) [%s][%s][%s]', parseStr, chunk1, chunk2)
            sourceTime = self._evalDateStd(parseStr, sourceTime)

        return s, sourceTime, bool(parseStr)
test if giving C{s} matched CRE_DATE, used by L{parse()}

        @type  s:          string
        @param s:          date/time text to evaluate
        @type  sourceTime: struct_time
        @param sourceTime: C{struct_time} value to use as the base

        @rtype:  tuple
        @return: tuple of remained date/time text, datetime object and
                 an boolean value to describ if matched or not