请善意告诉我如何将整数添加到现有记录中,该记录以如下字符串序列开头;
S0000 - S00027
亲切的问候, Indunil Sanjeewa
答案 0 :(得分:0)
逻辑是:
Substring()
Int.Parse
或Int.TryParse
string.Concat
或仅string + integer
答案 1 :(得分:0)
试试这段代码:
string record = "S00009";
string recordPrefix = "S";
char paddingCharacter = '0';
string recordNoPart = record.Substring(recordPrefix.Length);
int nextRecordNo = int.Parse(recordNoPart) + 1;
string nextRecord = string.Format("{0}{1}", recordPrefix, nextRecordNo.ToString().PadLeft(record.Length - recordPrefix.Length, paddingCharacter));
@ purakura88已经给出了逻辑。我刚刚提供了硬核c#代码。
答案 2 :(得分:0)
您可以使用以下方法
string input = @"S0000";
string pattern = @"\d+";
string format = @"0000";
int addend = 1;
string result = Regex.Replace(input, pattern,
m => (int.Parse(m.Value) + addend).ToString(format));
// result = S0001
正则表达式\d+
匹配所有数字。
MatchEvaluator
将匹配值转换为整数。然后添加加数。然后使用指定的格式将值转换为字符串。
最后,使用Replace
方法将前一个值替换为新值。