rector/packages/NodeNameResolver/Regex/RegexPatternDetector.php
Tomas Votruba 20dc105d45 Updated Rector to commit 06994b8ff38f65e68a93633d4430ce16b47f506b
06994b8ff3 [Core] Avoid hang on file has template-extends (#1034)
2021-10-22 03:28:32 +00:00

28 lines
719 B
PHP

<?php
declare (strict_types=1);
namespace Rector\NodeNameResolver\Regex;
use RectorPrefix20211022\Nette\Utils\Strings;
final class RegexPatternDetector
{
/**
* @var string[]
*
* This prevents miss matching like "aMethoda"
*/
private const POSSIBLE_DELIMITERS = ['#', '~', '/'];
public function isRegexPattern(string $name) : bool
{
if (\RectorPrefix20211022\Nette\Utils\Strings::length($name) <= 2) {
return \false;
}
$firstChar = $name[0];
$lastChar = $name[\strlen($name) - 1];
if ($firstChar !== $lastChar) {
return \false;
}
return \in_array($firstChar, self::POSSIBLE_DELIMITERS, \true);
}
}