Почему следующий код не работает (появляется ложно) с индийскими языками?
System.out.println(Charset.forName("UTF-8").encode("అనువాద")
.asCharBuffer().toString().matches("\\p{L}+"));
System.out.println(Charset.forName("UTF-8").encode("स्वागत")
.asCharBuffer().toString().matches("\\p{L}+"));
System.out.println(Charset.forName("UTF-8").encode("நல்வரவு")
.asCharBuffer().toString().matches("\\p{L}+"));
Все приведенные выше коды возвращают значение false. В чем проблема с этим регулярным выражением? Как проверить любой символ юникода в мире?