您好,我有一个像波纹管这样的字符串字符模式。整个字符始终是静态的,如[[demo.waka=number]]
。我想从此模式中获取数字。请检查我已经尝试过。我现有解决方案的问题是,这只能获取3
整数。我要的是它会抓住[[demo.waka=
直到结束]]
。最好的方法是什么?
string foo = [[demo.waka=340]]
//need output just the number 340
已经像下面这样尝试了:
string foo = "[[demo.waka=340]]";
string a = foo.Substring(foo.LastIndexOf('=') + 1);
string b = a.Substring(0, 1);
int outputNumber = Convert.ToInt32(b);
在Replace
似乎工作“快”:
string foo = "[[demo.waka=340]]";
DateTime start;
for (int y = 0; y < 5; y++)
{
start = DateTime.Now;
for (int x = 0; x < 10000; x++)
{
string outputString2 = Regex.Match(foo, @"(?<=\[\[demo\.waka=)\d+(?=\]\])").Value;
}
Console.WriteLine("1: {0}", (DateTime.Now - start).TotalMilliseconds);
start = DateTime.Now;
for (int x = 0; x < 10000; x++)
{
int outputNumber3 = Convert.ToInt32(foo.Replace("[[demo.waka=", "").Replace("]]", ""));
}
Console.WriteLine("2: {0}", (DateTime.Now - start).TotalMilliseconds);
}
Console.ReadLine();
输出:
1: 15,0234
2: 1,0008
1: 9,0035
2: 1,9725
1: 7,9981
2: 1,9988
1: 8,0316
2: 1,9694
1: 9,0298
2: 1,0002
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句