protected function remapRecursively(&$data, $oldKey, $newKey)
    {
        $data->loopThrough(function ($index, $value) use ($data, $oldKey, $newKey) {
            $matches = $this->checkRegexRecursively($value, $oldKey, $index);
            foreach ($matches as $match) {
                $this->remap($data, $match[0], $this->getRegexProperty($match, $newKey));
            }
        });
    }
protected function remapRecursively(&$data, $oldKey, $newKey)
    {
        $data->loopThrough(function ($index, $value) use ($data, $oldKey, $newKey) {
            $matches = $this->checkRegexRecursively($value, $oldKey, $index);
            foreach ($matches as $match) {
                $this->remap($data, $match[0], $this->getRegexProperty($match, $newKey));
            }
        });
    }
protected function remapRecursively ( & $ data , $ oldKey , $ newKey ) { $ data -> loopThrough ( function ( $ index , $ value ) use ( $ data , $ oldKey , $ newKey ) { $ matches = $ this -> checkRegexRecursively ( $ value , $ oldKey , $ index ) ; foreach ( $ matches as $ match ) { $ this -> remap ( $ data , $ match [ 0 ] , $ this -> getRegexProperty ( $ match , $ newKey ) ) ; } } ) ; }
Remap properties recursively via regex.

@param FormatAble $data
@param string     $oldKey
@param string     $newKey
Remap properties recursively via regex .