我有一个看起来像这样的字符串列表
String s = "Top-0001-V[5]"
我需要将部件切换到此模式:
String sF = "0001-Top-V-[5]"
我已经尝试将它们拆分为“ - ”然后添加它们,但问题是它是一个非常长的代码行,有没有办法以一种简单的方式执行此操作,或者我必须将它全部拆分向上的方式并将其添加回来?
答案 0 :(得分:3)
这可能会为你做到这一点
var items = s.Split('-');
items[items.Length - 1] = items[items.Length - 1].Replace("[","-[");
string x = String.Format("{0}-{1}-{2}", items[1], items[0], items[2]);
输出
0001-顶V- [5]
如果字符串的格式很常见,您也可以使用String.Substring
,因为String.Substring
从此实例中检索子字符串。子字符串从指定的字符位置开始,并具有指定的长度。
答案 1 :(得分:3)
正则表达式可能有所帮助:
var r = new Regex("(Top)-(\\d+)-(V)\\[(\\d+)\\]");
string result = r.Replace(myInout, "$2-$1-$3-[$4]")