/**
  * Main regex processing to extract numbers and ranges, to be able to expand them later
  */
 private function _processRangeText($text)
 {
     $regEx = SELF::_constructRegEx();
     # echo "<pre>$text\n" . print_r($regEx,true) . "</pre>";
     foreach ($regEx as $key => $val) {
         ${$key} = $val;
     }
     $allCount = preg_match_all("({$combinedRegEx})i", $text, $allMatches);
     // echo "<p>$text</p>";
     // echo "<pre>Count: $allCount\n" . print_r($allMatches,true) . "</pre>"; // die();
     $cookedRanges = array();
     foreach (array_unique($allMatches[0]) as $singleMatch) {
         $usedRegExId = false;
         foreach ($singleRegEx as $id => $testString) {
             $count = preg_match("({$testString})i", $singleMatch);
             if ($count) {
                 $usedRegExId = $id;
                 break;
             }
         }
         if ($usedRegExId) {
             $usedUnit = substr($usedRegExId, 0, strrpos($usedRegExId, "/"));
             $number = $unitRegEx[$usedUnit];
             #echo "<pre>'$singleMatch' = $usedRegExId / $usedUnit ($number)</pre>";
             $singleCount = preg_match_all("({$number})i", $singleMatch, $singleSplit);
             # echo "<pre>singleCount: $singleCount\n" . print_r($singleSplit,true) . "</pre>";
             $numberRange = array();
             $numberRange[] = $singleSplit[0][0];
             $numberRange[] = $singleSplit[0][$singleCount == 2 ? 1 : 0];
             $numberRange = SELF::_expandNumberRange($numberRange);
             # echo "<pre>" . print_r($numberRange,true) . "</pre>";
             $numberRange[] = $usedUnit;
             $cookedRanges[] = $numberRange;
         }
     }
     // echo "<pre>" . print_r($cookedDates,true) . "</pre>"; die();
     return $cookedRanges;
 }