我希望正则表达式组中的'\'反斜杠之间的内容。
C:\\Development\\TestEnvironment\\VIdeo\MyVideo.mp3
答案 0 :(得分:5)
string path = @"C:\Development\TestEnvironment\VIdeo\MyVideo.mp3";
var split = Regex.Split(path, "\\\\");
但是......
var split = path.Split('\\');
完成相同的结果, 可能 更快。
通过32次迭代,每次100万次,并获得这些结果。数字是来自StopWatch
的ElaspedTicks。
Regex: 12707294.90625
Split: 3360008.8125
显然,如果它不时地运行,这可能不是问题,但如果情况不是这样,那么强烈只考虑String.Split()
。
答案 1 :(得分:5)
如果您hell-bent使用正则表达式:
using System;
using System.Text.RegularExpressions;
class Program
{
static void Main()
{
// ... Input string.
string input = "C:\Development\TestEnvironment\VIdeo\MyVideo.mp3";
// ... One or more digits.
Match m = Regex.Match(input, "(?i)(?x)\\\\([\\w\\.]+)");
// ... Write value.
Console.WriteLine(m.Value);
}
}