android正则表达式匹配一个地址

时间:2013-08-02 08:28:49

标签: android regex expression match

在我的Android应用程序中,我必须对包含地址的编辑文本进行控制,

现在我的控制权是:

Indirizzo.toString().matches("[\\sa-zA-Z0-9]*")

但我还必须添加其他角色来控制,

例如:\ . n ° ,

如何更改正则表达式?

2 个答案:

答案 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°,]*

此外,您应该使用+而不是*来消除零字符匹配。