', '[a-z]+', '\d+', ); } protected function getNonCatchablePatterns() { return array( '\s+', '(.)', ); } protected function getType(&$value) { if (is_numeric($value)) { $value = (int)$value; return 'int'; } if (in_array($value, array('=', '<', '>'))) { return 'operator'; } if (is_string($value)) { return 'string'; } return; } }