C# 在字符串中添加句点

C# 在字符串中添加句点,c#,c#-4.0,C#,C# 4.0,鉴于以下代码,我无法确定为什么无法获得预期输出: int periods = (location.Length / 2) - 1; for (int index = 2, i = 0; i < periods; index += 3, ++i ) { location = location.Insert(index, "."); } int periods=(location.Length/2)-1; 对于(int index=2,i=0;i

鉴于以下代码,我无法确定为什么无法获得预期输出:

int periods = (location.Length / 2) - 1;

for (int index = 2, i = 0; i < periods; index += 3, ++i )
{
   location = location.Insert(index, ".");
}
int periods=(location.Length/2)-1;
对于(int index=2,i=0;i

位置
“C5032AC”
,我希望在循环终止后
位置
将等于
“C.50.32.a.C”
;而是
“C5.03.2AC”
。有人能解释一下我在这里遗漏了什么吗?

我将研究使用正则表达式来帮助您实现这一目标。您应该能够创建与字符串中特定模式匹配的正则表达式,并且应该能够在这些匹配之间插入字符。请看这篇文章

我被要求提供一些代码来帮助支持这一点。我不认为正则表达式是过分的,我相信按照这个例子的思路,至少会朝着正确的方向迈出一步

line=Regex.Replace(line,@"([\w])(\d{2})(\d{2})(\w)(\w)","$1.$2.$3.$4.$5");

添加句点的标准是什么?我们如何才能确定您需要什么???请您指定插入的citeria:)我将被挂起。我不知道你可以有两个循环变量,然后递增它们。如果你想在每个字符和每个整数后面加一个句点。这是对的吗?正则表达式似乎有些过分,但无论如何,这并不能回答问题。请至少包括您认为有效的正则表达式/代码。它应该是“$1.$2.$3.$4.$5”(您有%而不是$)