仅保留字母字符

2022-09-01 05:36:11

我应该在java中遵循什么方法来生成

"WordWord"

"Word#$#$% Word 1234"

答案 1

您可以使用 String.replaceAll(正则表达式,替换)与正则表达式,如下所示:[^A-Za-z]+

String newstr = "Word#$#$% Word 1234".replaceAll("[^A-Za-z]+", "");
// newstr will become WordWord

编辑:虽然OP没有提到任何事情,但是由于@Joey已经发表了评论,如果有任何要求保留unicode字符,那么正则表达式应该这样使用:unicode characters\\P{L}+

String newstr = "Word#$#$% Word λ1234ä, ñ, ж".replaceAll("\\P{L}+", "");
// newstr will become WordWordλäñж

答案 2
public static void main(String[] args) {
    String input = "Word#$#$% Word 1234";
    String extract = input.replaceAll("[^a-zA-Z]+", "");
    System.out.println(extract);
}

输出:

WordWord