protected function split(array &$str, $pattern)
    {
        $tokens = array();
        foreach ($str as $s) {
            $tokens = array_merge(
                $tokens,
                preg_split($pattern, $s, null, PREG_SPLIT_NO_EMPTY)
            );
        }

        $str = $tokens;
    }