使用正则表达式在5位数之后插入9位数的连字符

son*_*ali 1 .net c# regex

我必须在c#中的文本更改事件中自动插入9位数的连字符,而不是javascript.

所以如果我的号码是123456789那么它会​​自动变成12345-6789.

我想使用regex.match.

我的尝试:

正则表达式"^\d {5}( - \d {4})?$"是结果应该如何.

所以,

Regex regTest = new Regex("^\\d{5}(-\\d{4})?$");

Match match = regTest.Match(s);

if (match.Success)
           {
              var numString = match.Value;
           }
Run Code Online (Sandbox Code Playgroud)

但上述情况并未取得成功.

感谢帮助.

Ode*_*ded 6

您的代码示例只是检查格式是否xxxxx-xxxx.它不插入连字符.

您不需要RexEx来插入连字符:

myString.Insert(5, "-");
Run Code Online (Sandbox Code Playgroud)