protected function getRuntimeEvaluationConditionsFromEvaluateString($evaluateString)
{
$matches = [];
$runtimeEvaluationConditions = [];
preg_match_all(self::PATTERN_MATCHRUNTIMEEVALUATIONSDEFINITION, $evaluateString, $matches);
$matchesCount = count($matches[0]);
for ($i = 0; $i < $matchesCount; $i++) {
if ($matches[2][$i] === 'in' || $matches[2][$i] === 'matches') {
$list = [];
$listEntries = [];
if (preg_match('/^\\s*\\(.*\\)\\s*$/', $matches[3][$i], $list) > 0) {
preg_match_all(self::PATTERN_MATCHRUNTIMEEVALUATIONSVALUELIST, $list[0], $listEntries);
$matches[3][$i] = $listEntries[1];
}
}
$runtimeEvaluationConditions[] = ['operator' => $matches[2][$i], 'leftValue' => $matches[1][$i], 'rightValue' => $matches[3][$i]];
}
return $runtimeEvaluationConditions;
}