如何掩盖字符串?
我有一个值为“1131200001103”的字符串。
如何使用Response.Write(value)以“11-312-001103”格式将其显示为字符串?
谢谢
这产生了所需的结果
string result = Int64.Parse(s.Remove(5,2)).ToString("00-000-000000");
假设您要在2个第一个空值的位置删除2个字符。
你不想只使用Substring
吗?
string dashed = text.Substring(0, 2) + "-" + text.Substring(2, 3) + "-" + text.Substring(7);
要么:
string dashed = string.Format("{0}-{1}-{2}", text.Substring(0, 2), text.Substring(2, 3), text.Substring(7));
(我假设你故意错过了0中的两个?不清楚哪个是 0,不可否认……)
显然你应该首先validation字符串是否正确…
您可以尝试使用正则表达式并将其放在扩展方法ToMaskedString()中
public static class StringExtensions { public static string ToMaskedString(this String value) { var pattern = "^(/d{2})(/d{3})(/d*)$"; var regExp = new Regex(pattern); return regExp.Replace(value, "$1-$2-$3"); } }
然后打电话
respne.Write(value.ToMaskedString());
也许是这样的
string result = str.SubString(0, 2) + "-" + str.SubString(2, 3) + "-" + str.SubString(7);
str是“11312000011103”字符串