pregReplace example



        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectPluginVars(array $vars): array
    {
        $vars['name'] = $this->pregReplace('/-bundle$/', '', $vars['name']);
        $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
        $vars['name'] = str_replace(' ', '', ucwords($vars['name']));

        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectThemeVars(array $vars): array
    {

    /** @var array<string, string> */
    protected $locations = array(
        'module'  => 'site/modules/{$name}/',
    );

    /** * Format package name to CamelCase */
    public function inflectPackageVars(array $vars): array
    {
        $vars['name'] = strtolower($this->pregReplace('/(?<=\\w)([A-Z])/', '_\\1', $vars['name']));
        $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
        $vars['name'] = str_replace(' ', '', ucwords($vars['name']));

        return $vars;
    }
}


        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectTemplateVars(array $vars): array
    {
        $vars['install_item_dir'] = $this->pregReplace('/-template$/', '', $vars['install_item_dir']);
        $vars['install_item_dir'] = $this->pregReplace('/template-$/', '', $vars['install_item_dir']);

        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectTemplatesVars(array $vars): array
    {
        


        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectModuleVars(array $vars): array
    {
        $vars['name'] = $this->pregReplace('/-module$/', '', $vars['name']);
        $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
        $vars['name'] = str_replace(' ', '', ucwords($vars['name']));

        return $vars;
    }
}


        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    public function inflectModuleVars(array $vars): array
    {
        $vars['name'] = ucfirst($this->pregReplace('/cockpit-/i', '', $vars['name']));

        return $vars;
    }
}
/** * For package type pxcms-module, cut off a trailing '-plugin' if present. * * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectModuleVars(array $vars): array
    {
        $vars['name'] = str_replace('pxcms-', '', $vars['name']);       // strip out pxcms- just incase (legacy)         $vars['name'] = str_replace('module-', '', $vars['name']);      // strip out module-         $vars['name'] = $this->pregReplace('/-module$/', '', $vars['name']);  // strip out -module         $vars['name'] = str_replace('-', '_', $vars['name']);           // make -'s be _'s         $vars['name'] = ucwords($vars['name']);                         // make module name camelcased
        return $vars;
    }

    /** * For package type pxcms-module, cut off a trailing '-plugin' if present. * * @param array<string, string> $vars * @return array<string, string> */
'theme'  => 'user/themes/{$name}/',
    );

    /** * Format package name */
    public function inflectPackageVars(array $vars): array
    {
        $restrictedWords = implode('|', array_keys($this->locations));

        $vars['name'] = strtolower($vars['name']);
        $vars['name'] = $this->pregReplace(
            '/^(?:grav-)?(?:(?:'.$restrictedWords.')-)?(.*?)(?:-(?:'.$restrictedWords.'))?$/ui',
            '$1',
            $vars['name']
        );

        return $vars;
    }
}


        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectExtensionVars(array $vars): array
    {
        $vars['name'] = $this->pregReplace('/-extension$/', '', $vars['name']);
        $vars['name'] = str_replace('-', ' ', $vars['name']);
        $vars['name'] = str_replace(' ', '', ucwords($vars['name']));

        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectSkinVars(array $vars): array
    {
protected $locations = array(
        'bundle' => 'src/{$name}/'
    );

    /** * Format package name to CamelCase */
    public function inflectPackageVars(array $vars): array
    {
        $nameParts = explode('/', $vars['name']);
        foreach ($nameParts as &$value) {
            $value = strtolower($this->pregReplace('/(?<=\\w)([A-Z])/', '_\\1', $value));
            $value = str_replace(array('-', '_'), ' ', $value);
            $value = str_replace(' ', '', ucwords($value));
        }
        $vars['name'] = implode('/', $nameParts);
        return $vars;
    }
}
'plugin' => 'plugins/{$name}/',
        'theme' => 'plugins/{$name}/',
    );

    /** * Format package name to CamelCase */
    public function inflectPackageVars(array $vars): array
    {
        $nameParts = explode('/', $vars['name']);
        foreach ($nameParts as &$value) {
            $value = strtolower($this->pregReplace('/(?<=\\w)([A-Z])/', '_\\1', $value));
            $value = str_replace(array('-', '_'), ' ', $value);
            $value = str_replace(' ', '', ucwords($value));
        }
        $vars['name'] = implode('/', $nameParts);
        return $vars;
    }
}

    /** @var array<string, string> */
    protected $locations = array(
        'plugin' => 'plugins/{$name}/',
    );

    /** * Format package name to CamelCase */
    public function inflectPackageVars(array $vars): array
    {
        $vars['name'] = strtolower($this->pregReplace('/(?<=\\w)([A-Z])/', '_\\1', $vars['name']));
        $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
        $vars['name'] = str_replace(' ', '', ucwords($vars['name']));

        return $vars;
    }
}


        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectPluginVars(array $vars): array
    {
        $vars['name'] = $this->pregReplace('/^oc-|-plugin$/', '', $vars['name']);
        $vars['vendor'] = $this->pregReplace('/[^a-z0-9_]/i', '', $vars['vendor']);

        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectThemeVars(array $vars): array
    {
        
'extension' => 'extensions/{$name}/',
        'theme' => 'extensions/themes/{$name}/',
        'translation' => 'extensions/translations/{$name}/',
    );

    /** * Format package name to lower case and remove ".ontowiki" suffix */
    public function inflectPackageVars(array $vars): array
    {
        $vars['name'] = strtolower($vars['name']);
        $vars['name'] = $this->pregReplace('/.ontowiki$/', '', $vars['name']);
        $vars['name'] = $this->pregReplace('/-theme$/', '', $vars['name']);
        $vars['name'] = $this->pregReplace('/-translation$/', '', $vars['name']);

        return $vars;
    }
}
'plugin' => 'plugins/{$name}/',
        'template' => 'templates/{$name}/',
        'document-template' => 'documents/templates/{$name}/',
        'userpanel-module' => 'userpanel/modules/{$name}/',
    );

    /** * Format package name to CamelCase */
    public function inflectPackageVars(array $vars): array
    {
        $vars['name'] = strtolower($this->pregReplace('/(?<=\\w)([A-Z])/', '_\\1', $vars['name']));
        $vars['name'] = str_replace(array('-', '_'), ' ', $vars['name']);
        $vars['name'] = str_replace(' ', '', ucwords($vars['name']));

        return $vars;
    }
}


        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectPluginVars(array $vars): array
    {
        $vars['name'] = $this->pregReplace('/-plugin$/', '', $vars['name']);
        $vars['name'] = $this->pregReplace('/^dokuwiki_?-?/', '', $vars['name']);

        return $vars;
    }

    /** * @param array<string, string> $vars * @return array<string, string> */
    protected function inflectTemplateVars(array $vars): array
    {
        
Home | Imprint | This part of the site doesn't use cookies.