C#用空格替换字符串中的所有字符

the*_*el8 -4 c# string replace character

我在C#中制作一个刽子手游戏,它需要向玩家显示句子,但是所有字符都是"X",除了空格.因此,如果句子是"我是一个人",那么它将是"XXX X XXXXXX".当每个字符替换为"X"时,我找到了一种方法,但问题是,空格也被替换为X.

代码:

string WrVS = String.Empty;
for (int i = 0; i < Words[randomVal].Length; i++)
{
    WrVS += "X";
}
RWordCensored.Text = WrVS;
Run Code Online (Sandbox Code Playgroud)

(randomVal是从列表中选择随机句子的随机数),(RWordCensored是一个richTextBox,应该以我说的格式显示句子.

我没有在谷歌的问题上找到答案.

/维克托

Hab*_*bib 6

可以使用 REGEX (我想)来完成,但这里是 LINQ 选项。

string str = "I'm a person";
string replacedString = new String(str.Select(r => r == ' ' ? ' ' : 'X').ToArray());
Run Code Online (Sandbox Code Playgroud)

你会回来的 replacedString = "XXX X XXXXXX"


mal*_*kam 6

试试这个

var res=new Regex("\\S").Replace("I am a person","X");
//res will be X XX X XXXXXX
Run Code Online (Sandbox Code Playgroud)