インドの言語で次のコードが機能しない (false になる) のはなぜですか?
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 を返します。この正規表現の問題は何ですか? 世界のユニコード文字を検証する方法は?