添加分隔符到字符串?

时间:2017-03-20 05:18:28

标签: c#

我在这里得到了一个数字样本字符串输出:

  

123456789

但我的目标是让它像这样:

  

格式:123-45-6789

我能够在这里查找一些代码,但它们都有一个修复间隔,这与我正在制作的不一致。需要将输入格式设置为“123-45-6789”,但保存时只需要9个字符,因为应该存储的空间有限,所以我使用此代码来满足长度为9个字符。

Input.Text = Input.Text.Trim().Replace("-", string.Empty);
Bio.SetString(UserName, "9Character", Input.Text.Trim());

但是再次显示时,又需要使用这种格式,123-45-6789。这是我的问题。

2 个答案:

答案 0 :(得分:1)

您还可以尝试以下方式:

 string val = "123456789";
 val =  val.Substring(0, 3) + "-" + val.Substring(3, 2) +  "-" + val.Substring(5) ;

这是一个有效的DEMO

答案 1 :(得分:0)

之类的,

  string number = "123456789";
  var output = Regex.Replace(number,
                         @"^(\d{3})[ -]?(\d{2})[ -]?(\d{4})( x\d+)?",
                         @"$1-$2-$3$4", RegexOptions.IgnorePatternWhitespace);

  Console.WriteLine($"formated {output}");

输出:formated 123-45-6789

Demo