@property
def datetime(self):
    'Extract datetime if available (lazy).'
    if (not self._datetime_calculated):
        self._datetime_calculated = True
        split_tokens = self.split_tokens[:10]
        for offs in range(len(split_tokens)):
            dt = self._match_datetime_pattern(split_tokens[offs:(offs + 4)])
            if dt:
                self._datetime = dt
                self._datetime_nextpos = offs
                if self._datetime_format.startswith('iso8601'):
                    self._datetime_nextpos += 1
                else:
                    self._datetime_nextpos += 4
                self._line_str = ' '.join(self.split_tokens[self._datetime_nextpos:])
                if self.level:
                    self._datetime_nextpos += 2
                self._reformat_timestamp(self._datetime_format)
                break
    return self._datetime
Extract datetime if available (lazy).
@property
def datetime(self):
    
    if (not self._datetime_calculated):
        self._datetime_calculated = True
        split_tokens = self.split_tokens[:10]
        for offs in range(len(split_tokens)):
            dt = self._match_datetime_pattern(split_tokens[offs:(offs + 4)])
            if dt:
                self._datetime = dt
                self._datetime_nextpos = offs
                if self._datetime_format.startswith('iso8601'):
                    self._datetime_nextpos += 1
                else:
                    self._datetime_nextpos += 4
                self._line_str = ' '.join(self.split_tokens[self._datetime_nextpos:])
                if self.level:
                    self._datetime_nextpos += 2
                self._reformat_timestamp(self._datetime_format)
                break
    return self._datetime