java - 使用 Java 更改字符串中除空格以外的所有字母

我想使用 Java 将除空格之外的所有字母从字符串更改为“-”字符。

我试过了:

String out = secretWord.replaceAll("^ " , "-");

String out = secretWord.replaceAll("\\s" , "-");

他们没有工作。

我试过了:

String newWord = secretWord.replaceAll("[A-Z]" , "-");

它有效,但我没有更改我在该字符串中使用的土耳其语字符。

原始代码:

public class ChangeToLine {

    public static void main(String[] args) {
    
        String originalWord = "ABİDİKUŞ GUBİDİKUŞ";
        String secretWord = originalWord;
    }
}

回答1

您可以使用 \\S 正则表达式:

String s = "Sonra görüşürüz";
String replaced = s.replaceAll("\\S", "-");
System.out.println(replaced); // outputs ----- ---------

回答2

使用字符类

String out = secretWord.replaceAll("[^ ]" , "-");

或大写 S,而不是小写 s 来替换所有非空格字符

String out2 = secretWord.replaceAll("\\S" , "-");

回答3

java.util.regex.Pattern中NOT需要用方括号表示:

String out = secretWord.replaceAll("[^\\s]", "-")

相似文章

最新文章