我想知道如何用"除最后一个数字字符"之外的条件替换字符串的字符?
例:
string = "4111111111111111";
Run Code Online (Sandbox Code Playgroud)
我想做到这一点
new_string = "XXXXXXXXXXXXX1111"
Run Code Online (Sandbox Code Playgroud)
在这个例子中,我将字符替换为"X",除了最后4个字符.
我怎么可能实现这个目标?
Xav*_*nas 23
那适合你吗?
var input = "4111111111111111";
var length = input.Length;
var result = new String('X', length - 4) + input.Substring(length - 4);
Console.WriteLine(result);
// Ouput: XXXXXXXXXXXX1111
Run Code Online (Sandbox Code Playgroud)
DRa*_*app 10
怎么样......
new_string = new String('X', YourString.Length - 4)
+ YourString.Substring(YourString.Length - 4);
Run Code Online (Sandbox Code Playgroud)
根据当前字符串-4的长度创建一个新字符串,并将其全部设为"X".然后添加原始字符串的最后4个字符
这是一种思考它的方法.拨打最后一个数字字符离开n
:
X
?字符串的长度减去n
.string
,但你可以建立一个新的.n
从原始字符串中获取最后一个字符?有几种方法可以做到这一点,但最简单的方法是Substring
,它允许我们通过指定起点和可选的结束点来获取字符串的一部分.所以它看起来像这样(n
从原始字符离开的字符数在哪里,str
是原始字符串 - string
不能是变量的名称,因为它是保留的关键字):
// 2. Start with a blank string
var new_string = "";
// 1. Replace first Length - n characters with X
for (var i = 0; i < str.Length - n; i++)
new_string += "X";
// 3. Add in the last n characters from original string.
new_string += str.Substring(str.Length - n);
Run Code Online (Sandbox Code Playgroud)