diff --git a/rules-tests/Naming/Rector/Foreach_/RenameForeachValueVariableToMatchExprVariableRector/Fixture/keep_underscore.php.inc b/rules-tests/Naming/Rector/Foreach_/RenameForeachValueVariableToMatchExprVariableRector/Fixture/keep_underscore.php.inc new file mode 100644 index 00000000000..8b04cf6cfc7 --- /dev/null +++ b/rules-tests/Naming/Rector/Foreach_/RenameForeachValueVariableToMatchExprVariableRector/Fixture/keep_underscore.php.inc @@ -0,0 +1,33 @@ + +----- + diff --git a/rules/Naming/ExpectedNameResolver/InflectorSingularResolver.php b/rules/Naming/ExpectedNameResolver/InflectorSingularResolver.php index 59021ac5bd7..92455e6845e 100644 --- a/rules/Naming/ExpectedNameResolver/InflectorSingularResolver.php +++ b/rules/Naming/ExpectedNameResolver/InflectorSingularResolver.php @@ -18,9 +18,9 @@ final class InflectorSingularResolver /** * @var string - * @see https://regex101.com/r/lbQaGC/1 + * @see https://regex101.com/r/lbQaGC/3 */ - private const CAMELCASE_REGEX = '#(?([a-z]+|[A-Z]{1,}[a-z]+))#'; + private const CAMELCASE_REGEX = '#(?([a-z]+|[A-Z]{1,}[a-z]+|_))#'; /** * @var string @@ -64,7 +64,7 @@ public function resolve(string $currentName): string $singularValueVarName .= $this->inflector->singularize($camelCase['camelcase']); } - if ($singularValueVarName === '') { + if ($singularValueVarName === '' || $singularValueVarName === '_') { return $currentName; }