Why is this an issue?

When an alternation contains multiple alternatives that consist of a single character, it can be rewritten as a character class. This should be preferred because it is more efficient and can even help prevent stack overflows when used inside a repetition (see rule {rule:java:S5998}).

Noncompliant code example

Pattern.compile("a|b|c"); // Noncompliant

Compliant solution

Pattern.compile("[abc]");
// or
Pattern.compile("[a-c]");