/** * @param string $expression * @return CompoundExpression */ public static function parseConjunctiveExpression($expression) { $result = new CompoundExpression(CompoundExpression::CONJUNCTIVE); if (preg_match(self::REGEX_HYPHEN, $expression, $parts)) { $result->addMultiple(self::parseHyphen($parts[1], $parts[2])); } else { foreach (preg_split('/\\s+/', $expression) as $simple) { $result->addMultiple(self::parseSimpleExpression($simple)); } } return $result; }