Sub-patterns can be wrapped by parentheses to build a group. This enables to restrict alternations, back reference the group or apply quantifier to
If this group should not be part of the match result or if no reference to this group is required, a non-capturing group can be created by adding
?: behind the opening parenthesis.
However, if this non-capturing group does not have a quantifier, or does not wrap an alternation, then imaging this group is redundant.
Noncompliant Code Example
This rule does not report an issue if the non-capturing group is an alternation.
Subpatterns - PHP Documentation