java - 如何将所有字母替换为下划线

标签 java

我正在制作刽子手游戏。我想将所有字母(小写和大写)更改为下划线。这是我的代码:

    _answer = "HANGMAN";
    Log.i("Word", "Answer orig: " + _answer);
    _answer = _answer.replaceAll("/[a-zA-Z]+/g", "_");
    Log.i("Word", "Answer underscore: " + _answer);

输出是:

Answer orig: HANGMAN
Answer underscore: HANGMAN

我的代码没有将字母替换为下划线。

最佳答案

您必须将“每个”字母更改为下划线。

public static void main(String[] args) throws Exception {
    String _answer = "HANGMAN";
    _answer = _answer.replaceAll("[a-zA-Z]", "_"); // replace each letter with an "_"
    System.out.println(_answer);

}

订单:

_______

注意:您还可以使用 (?i) 使其不区分大小写

_answer = _answer.replaceAll("(?i)[a-z]", "_");

关于java - 如何将所有字母替换为下划线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36975525/

相关文章:

java - 在 xtend 中循环,从 Java 转换

java - 以相反的方式存储句子中的每个字符串

java - 如何使用 Jackson 进行鸭子打字?

java - 当客户端从服务器调用Web服务时,如何在服务器项目和共享库中的客户端项目中使用jpa实体类?

java - NoClassDefFoundError ForkedBooter

java - 在 Java 中设置 https 客户端

java - 为什么 Tomcat 会报 403 错误?

Java子类$

java - 如何在同一场景中使用另一个 Controller 类加载新的 FXML

java - 在 Java 中从 String 创建一个实例