我想检查字符串(从密码类型字段接收)是否包含日语Zenkaku字符,但是我不知道如何使用Java检查它。
最佳答案
您可以使用Regular Expressions进行此操作,并且感谢the work of this guy,您已经准备好了所有需要的RegEx。
以下是有关zenkaku的信息:
Regex for matching full-width Katakana (zenkaku 全角)
([ァ-ン])
Regex for matching full-width Numbers (zenkaku 全角)
([0-9])
Regex for matching full-width Letters (zenkaku 全角)
([A-z])
Regex for matching full-width (zenkaku) Katakana codespace characters (includes
non phonetic characters)
([ァ-ヶ])
编辑:添加@ChrisB comment到问题:
实际上,平假名和片假名的正则表达式过于严格。
例如片假名正则表达式将不匹配包含
長音符
的单词,例如作为
ユーザー
和コンピューター
。这是平假名和片假名的一些更全面的正则表达式:
平假名=
[ぁ-ゔゞ゛゜ー]
// 0x3041-0x3094、0x309E,0x309B,0x309C,0x30FC片假名=
[ァ-・ヽヾ゛゜ー]
// 0x30A1-0x30FB,0x30FD,&#x30FE,0x309B,0x309C,0x30FC平假名或片假名=
[ぁ-ゔゞァ-・ヽヾ゛゜ー]
// 0x3041-0x3094、0x309E,0x30A1-0x30FB,0x30FD,&#x30FE,0x309B,0x309C,0x30FC