如何将数字替换为 #
本文关键字:替换 数字 | 更新日期: 2023-09-27 18:31:18
嗨,我有一个8位数长的帐号。如何循环遍历它并用 # 替换数字并仅显示最后一个数字?
int number = 12345678;
String strNumber = number.ToString();
String result = "#######" + strNumber[strNumber.Length - 1];
acct = Regex.Replace(acct, @"'d{7}", "#######");
您可以使用
Regex.Replace
.
var input = "12345678";
var pattern = new Regex(@"'d{7}");
var result = pattern.Replace(input, "#######");
var result = Regex.Replace("01234567", "''d{7}", "#######")
替换您的帐号超过"01234567"
但是,这样做可能会更快
var result = "#######" + acct.Substring(7)
(其中acct
是字符串形式的帐号 - 如果是int
则使用acct.ToString().Substring(7)
)
如果您可以保证acct
长度为 8 个字符。
字符串构造函数(字符,Int32)
将 String 类的新实例初始化为指示的值 通过指定的 Unicode 字符重复指定的次数。
string Number = "12345678";
string str = new string('#', 7) + Number.Substring(Number.Length - 1);
8 位数字 - 显示最后 1 位。
string acctNumber = "12345678".Substring(7, 1).PadLeft(8, '#');
ToString() 也是一个不错的选择:
acctNumber.ToString("''#''#''#''#''#''#''#0");
如果帐号为int
int accountNumber = 12345678;
String result = "#######" + accountNumber .ToString()[7];
正如蒂姆所建议的那样。但如果帐号string
string accountNumber = "12345678";
string result = "#######" + acc.ToCharArray()[accountNumber.Length - 1];
您可以将数字格式化为字符串,然后使用string.remove(0,7)
从字符串中删除前 7 个字符,然后在前面加上"#######"。例如:
int accNumber = 10085697;
string strAccountNumber=accNumber.ToString();
string truncatedAccountNumber="#######"+strAccountNumber.Remove(0,7);