403Webshell
Server IP : 213.136.93.164  /  Your IP : 216.73.216.36
Web Server : Apache
System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64
User : ki692510 ( 1047)
PHP Version : 7.4.33
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /opt/cpanel/ea-wappspector/vendor/rector/rector/src/NodeNameResolver/Regex/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /opt/cpanel/ea-wappspector/vendor/rector/rector/src/NodeNameResolver/Regex/RegexPatternDetector.php
<?php

declare (strict_types=1);
namespace Rector\NodeNameResolver\Regex;

final class RegexPatternDetector
{
    /**
     * @var string[]
     *
     * This prevents miss matching like "aMethoda"
     */
    private const POSSIBLE_DELIMITERS = ['#', '~', '/'];
    /**
     * @var array<string, string>
     */
    private const START_AND_END_DELIMITERS = ['(' => ')', '{' => '}', '[' => ']', '<' => '>'];
    public function isRegexPattern(string $name) : bool
    {
        if (\strlen($name) <= 2) {
            return \false;
        }
        $firstChar = $name[0];
        $lastChar = $name[\strlen($name) - 1];
        if ($firstChar !== $lastChar) {
            foreach (self::START_AND_END_DELIMITERS as $start => $end) {
                if ($firstChar !== $start) {
                    continue;
                }
                if ($lastChar !== $end) {
                    continue;
                }
                return \true;
            }
            return \false;
        }
        return \in_array($firstChar, self::POSSIBLE_DELIMITERS, \true);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit