java - 如何替换用户输入字符串中除一个字符外的所有字符

标签 java character replace

我目前正在学习初级 Java 类(class),并且正在研究经典短语猜测作业。目标是让一个用户输入一个 secret 短语,另一个用户一次猜一个字母。在猜测之间,短语必须显示为所有问号,除了猜对的字母。到目前为止,我们的类(class)只真正涵盖了一些非常基本的方法、if-else 语句和循环,但我正在尝试研究一些可能使这更容易的字符串方法。

我知道 replace()replaceAll()contains() 方法,但想知道是否有一种方法可以允许您替换字符串中除您选择的一个字符以外的所有字符。

提前致谢

最佳答案

最简单的方法可能是使用 String.replaceAll() :

String out = str.replaceAll("[^a]", "?");

这将使所有字母 a 保持原样,并将所有其他字符替换为问号。

这可以很容易地扩展到多个字符,像这样:

String out = str.replaceAll("[^aeo]", "?");

这将保留所有字母 aeo 并将替换其他所有字母。

关于java - 如何替换用户输入字符串中除一个字符外的所有字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7940053/

相关文章:

c# - Like 运算符和转义特殊字符时出错

Powershell 从字符串中获取数字

java - 使用递归的斐波那契数

java - Spring Data JPA 用户帖子

python - 为什么 '\b' 在 Python 中作为句子的最后一个字符看起来像是无效的?

php - 选择元素之间的文本内容

java - 使用 List 还是 Collection 更好?

java - Selenium 入门指南,我做错了什么?

c# - C# Parallel.ForEach 在用于替换文件文本时是否会引入竞争条件?

mysql - 搜索并替换 from 标签后 ""之间的字符串