我使用.NET 2.0和我有以下字符串字符串操作
string 1 = "test (10)"
我有一個正則表達式從字符串條10號,我再要增加它,並插入到該以前的字符串的括號來創建一個新的字符串,以便:
string 2 = "something else(11)"
非常感謝, 導航
我使用.NET 2.0和我有以下字符串字符串操作
string 1 = "test (10)"
我有一個正則表達式從字符串條10號,我再要增加它,並插入到該以前的字符串的括號來創建一個新的字符串,以便:
string 2 = "something else(11)"
非常感謝, 導航
如果字符串總是要具有相同的格式,你可以做我t等這樣的:
int myNumber = 11;
string two = String.Format("test ({0})", myNumber);
這是假設你已經有了正則表達式,你在你的問題,並根據您的新1。
編輯
例如新增加了它信息:
int myNumber = 11;
int myNewString = "Test";
string two = String.Format("{0} ({1})", myNewString, myNumber);
我不知道你想做的事......但保持簡單
var value = ExtractValue(str1);
value++;
string str2 = "test (" + value + ")";
讓一個類處理它..就像這樣。
TestNumbers testNumbers = new TestNumbers(1); testNumbers.Increment(1); testNumbers.Increment(1); testNumbers.GetNumber(); testNumbers.ToString();
public class TestNumbers
{
private int number = 0;
public TestNumbers(int number)
{
this.number = number;
}
public override string ToString()
{
return "Test (" + number + ")";
}
public void Increment(int incrementStep)
{
number += incrementStep;
}
public int GetNumber()
{
return number;
}
}
你做下面的代碼:
String s1 = string.format("{0} ({1})",yourstring,value);
簡單regex
的解決方案可能是:
string inputString = "test (10)";
Regex regex = new Regex(@"(.+)\((?<Digit>\d+)\)");
Match match = regex.Match(inputString);
int i = Convert.ToInt32(match.Groups["Digit"].Value);
i++;
string replacePattern = "$1(" + i + ")";
string newString = regex.Replace(inputString, replacePattern);
Console.WriteLine(newString);
我們可以看一下你的正則表達式? – BoltClock 2011-01-31 11:42:30
那麼covnert剝離10到int,增加他們用新數字替換以前的數字? – Lloyd 2011-01-31 11:42:37