Why does Apache Commons consider ‘१२३’ numeric?

Because that “CharSequence contains only Unicode digits” (quoting your linked documentation).

All of the characters return true for Character.isDigit:

Some Unicode character ranges that contain digits:

  • ‘\u0030’ through ‘\u0039’, ISO-LATIN-1 digits (‘0’ through ‘9’)
  • ‘\u0660’ through ‘\u0669’, Arabic-Indic digits
  • ‘\u06F0’ through ‘\u06F9’, Extended Arabic-Indic digits
  • ‘\u0966’ through ‘\u096F’, Devanagari digits
  • ‘\uFF10’ through ‘\uFF19’, Fullwidth digits

Many other character ranges contain digits as well.

१२३ are Devanagari digits:

  • is DEVANAGARI DIGIT ONE, \u0967
  • is DEVANAGARI DIGIT TWO, \u0968
  • is DEVANAGARI DIGIT THREE, \u0969

Leave a Comment

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)