/** * If the equation contains refernece to this, expand to comma separated list if needed. * @param type $eqn */ function ExpandThisVar($src) { $splitter = '(?:\\b(?:self|that))(?:\\.(?:[A-Z0-9_]+))*'; $parts = preg_split("/(" . $splitter . ")/i", $src, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE); $result = ''; foreach ($parts as $part) { if (preg_match("/" . $splitter . "/", $part)) { $result .= LimeExpressionManager::GetAllVarNamesForQ($this->questionSeq, $part); } else { $result .= $part; } } return $result; }