在我的Android应用程序中,我必须对包含地址的编辑文本进行控制,
现在我的控制权是:
Indirizzo.toString().matches("[\\sa-zA-Z0-9]*")
但我还必须添加其他角色来控制,
例如:\ . n ° ,
如何更改正则表达式?
答案 0 :(得分:2)
您可以考虑使用类似的内容:[\sa-zA-Z0-9\\\.n°/]*
。
话虽如此,该特定正则表达式也将匹配空字段。如果您不想这样做,只需将*
(匹配0次或多次重复)替换为+
(匹配一次或多次重复)。
\
是一个特殊字符,需要进行转义,因此需要额外\
。 .
也是一个特殊字符,也需要转义。
因此,在Java中,您需要使用类似的东西:[\\sa-zA-Z0-9\\\\\.n°/]*
答案 1 :(得分:0)
您可以使用以下字符类使正则表达式接受所有ASCII字符:
[\x00-\x7F]
或者,如果您只想匹配这些特定字符,即\ . n ° ,
,只需将它们添加到字符类中:
[\\sa-zA-Z0-9\.n°,]*
此外,您应该使用+
而不是*
来消除零字符匹配。