C#:姓名在输出时,如何将中间的汉字替换为*号
这个不是会操作字符串就会的吗?肯定是自己一点不会来问的。不过看着给一丢丢豆的情面上,我给个函数,自己看看咋写的:
private static string MarkString(string name)
{
if (name.Length >= 3)
{
var c = name.Length - 2;
var mn = new string('*', c);
return $"{name[0]}{mn}{name[name.Length-1]}";
}
return name;
}
我意思是C#有没有其他自带的属性可以直接替换的,这种是最笨的拼接,除了这种还有其他方法吗?
@大da脸: 无,据我所知,目前 C# 并没有提供其他的方式,往往简单粗暴的方式其实就是最好的方式。
@寂静的羽夏: 好吧
两个字的是不是也考虑替换一下,哈哈
@MrNice: 其实如果要自己写,后台封装个截取的方法进行从新拼接也是可以实现的,我现在主要用在视图上,视图上是遍历后端数据集的时候想吧获取的名字进行加密处理,视图上能用吗?