Blackberry 文本过滤器本地化
如果我以以下方式创建文本过滤器Blackberry 文本过滤器本地化,blackberry,localization,Blackberry,Localization,如果我以以下方式创建文本过滤器 class AlphaTextFilter extends TextFilter { public char convert(char c, int status) { if (!validate(c)) return 0; return c; } public boolean validate(char c) { return ((c >= 'a'
class AlphaTextFilter extends TextFilter {
public char convert(char c, int status) {
if (!validate(c))
return 0;
return c;
}
public boolean validate(char c) {
return ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'));
}
}
类AlphaTextFilter扩展了TextFilter{
公共字符转换(字符c,int状态){
如果(!验证(c))
返回0;
返回c;
}
公共布尔验证(字符c){
返回((c>='a'&&c='a'&&c是的,我相信是这样
char
是一个char
,不管你在什么地方。反正都是Unicode,所以不应该有任何类型的本地化问题。用类似的东西检查它是否是一个字母怎么样?这取决于你对“工作”的定义。如果“工作”的意思是只接受[A-zA-Z],那么是的
如果你的意思是,它能满足那些希望使用字母、音节或表意文字(或更常用的“字母”)的国际用户的期望吗,则不是。大多数平台现在提供了一些识别unicode字符类的机制,并且大多数较新的正则表达式引擎支持基于unicode字符类的匹配。在您的例子中,\p{letter}似乎是最合适的字符类。您是否知道如何验证文本字段的起始字母是否为大写。(尽管其他字母可能为小写)。如果您能提出可能的解决方案,将不胜感激。