如何从Java中的字符串中删除所有非字母字符?

问题描述:

我:如何从Java中的字符串中删除所有非字母字符?

String str = txtInput.getText(); 
String words[] = str.replaceAll("\\p{P}", "").split("\\s+"); 

...但我需要它来删除号码为好。

缩小你的正则表达式来代替只包含非字母字符(和空间,所以你可以拆分)。

String[] words = str.replaceAll("[^A-za-z ]", "").split("\\s+"); 

String[] words = str.replaceAll("[0-9]","").split("\\s"}); 

str.replaceAll("[^A-Za-z ]", ""); 
+0

你会捕捉空间在正则表达式,这意味着你将无法对任何分裂了。 – Makoto

+0

@Makoto谢谢你指出。我编辑了修复程序。 –