-7

こんにちは、私は 8 桁の口座番号を持っています。それをループして数字を # に置き換え、最後の桁のみを表示するにはどうすればよいですか?

4

8 に答える 8

3
int number = 12345678;
String strNumber = number.ToString();
String result = "#######" + strNumber[strNumber.Length - 1];
于 2012-04-17T11:43:11.317 に答える
1

文字列コンストラクタ(Char、Int32)

Stringクラスの新しいインスタンスを、指定された回数繰り返される指定されたUnicode文字で示される値に初期化します。

string Number = "12345678";
string str = new string('#', 7) + Number.Substring(Number.Length - 1);
于 2012-04-17T11:45:10.537 に答える
1

8桁の数字-最後の1を表示します。

string acctNumber = "12345678".Substring(7, 1).PadLeft(8, '#');

ToString()も良い選択です:

acctNumber.ToString("\\#\\#\\#\\#\\#\\#\\#0");
于 2012-04-17T11:45:57.300 に答える
1
acct = Regex.Replace(acct, @"\d{7}", "#######");
于 2012-04-17T11:40:44.263 に答える
1

を使用できますRegex.Replace

    var input = "12345678";
    var pattern = new Regex(@"\d{7}");
    var result = pattern.Replace(input, "#######");
于 2012-04-17T11:40:57.320 に答える
1
var result = Regex.Replace("01234567", "\\d{7}", "#######")

あなたのアカウント番号に置き換えてください"01234567"

ただし、実行する方がおそらく高速です。

var result = "#######" + acct.Substring(7)

(acct文字列としてのアカウント番号はどこにあります - それがintthen useの場合acct.ToString().Substring(7))

acct長さが 8 文字であることを保証できる場合。

于 2012-04-17T11:41:11.737 に答える
0

数値を文字列としてフォーマットし、文字列から最初の 7 文字を削除してから、string.remove(0,7)"#######" をプレフィックスとして使用できます。例えば:

        int accNumber = 10085697;

        string strAccountNumber=accNumber.ToString();

        string truncatedAccountNumber="#######"+strAccountNumber.Remove(0,7);
于 2012-04-17T11:49:21.550 に答える
0

口座番号がint

int accountNumber = 12345678;
String result = "#######" + accountNumber .ToString()[7];

ティムが提案したように。しかし、口座番号がstring

string accountNumber = "12345678";
string result = "#######" + acc.ToCharArray()[accountNumber.Length - 1];
于 2012-04-17T11:50:34.460 に答える