## Why is this an issue?

The use of punctuation characters to separate subgroups in a number can make the number more readable. For instance consider 1,000,000,000 versus 1000000000. But when the grouping is irregular, such as 1,000,00,000; it indicates an error.

This rule raises an issue when underscores (`_`) are used to break a number into irregular subgroups.

### Noncompliant code example

    int thousand = 100_0;
    int tenThousand = 100_00;
    int million = 1_000_00_000;

### Compliant solution

    int thousand = 1000;
    int tenThousand = 10_000;
    int tenThousandWithout = 10000;
    int duos = 1_00_00;
    int million = 100_000_000;

### Exceptions

No issue will be raised on binary numbers (starting with `0b` or `0B`). Binary number bits are often grouped corresponding to certain meanings, resulting in irregular bit group sizes.

    int configValue1 = 0b00_000_10_1; // Compliant
    int configValue2 = 0B00_000_10_1; // Compliant