2015-10-05 104 views
0

我只需要文字 我用这个方法,但不是工作我有数字和字符的字符串,我想单独

String zipCode = 325 55 NewYork; 

Pattern p = Pattern.compile("a-zA-Z_0-9]"); 
Matcher m = p.matcher(zipCode); 
if(m.matches()) 
{ 
    String s = m.group(1); 
} 
+2

什么不起作用?你想要达到什么目的? – hrskrs

+0

每次会有号码后的空格吗? –

+1

请在结束之前清除您的问题 –

回答

0

尝试以下方法

String zipCode = "411 14 Göteborg"; 

String extractedString = zipCode .replaceAll("[0-9]", "").trim(); 

Log.d("Home", "ExtractedString : " + extractedString); 

输出

10-05 08:06:35.137: D/Home(9504): ExtractedString : Göteborg 
+0

你明白他想要什么吗?当变量被称为zipCode时,你怎么确定他想要城市名?这真是令人困惑,他想要什么。 –

+0

@AdelBoutros他想要的是他想从字符串中取出城市名称。他不想要pin码和额外的文本 –

+0

不是真的,如果你检查'm.group(1)''**的javadoc **捕获组是从左到右索引的,从一开始**“ 所以他想要包含偶数“Pattern p = Pattern.compile(”a-zA-Z_0-9“)”)的正则表达式的第一组匹配。所以我从代码中了解到,他希望第一个数字部分'411' –