正则表达式如何获取filepath

时间:2014-11-01 11:08:58

标签: c# regex

我有一个配置文件,如:

#time(Second or HH:ss:mm)  exepath
5 c:\windows\notepad 
18:38:00   c:\windows\notepad.exe
18:38:00   "c:\path\path path2\program.exe" command

我想通过正则表达式获取时间,文件路径和命令。我试过了:

string line = "18:38:00   c:\windows\notepad.exe.....";//from config file
string reg = @"(\S*)("")?(.*)("")?";

Regex regex = new Regex(reg, RegexOptions.IgnoreCase);
Match m = regex.Match(str);

 if(m.Success)
  {
      Console.Write(" {0} ", m.Groups[1]);
      Console.Write(" {0} ", m.Groups[2]);
      Console.Write("/n");
  }  

但这不起作用

1 个答案:

答案 0 :(得分:1)

您忘记添加模式以匹配中间空间。

@"(?m)^(\S*)\s*""?([^""\n]*)""? *(.*)?$"

DEMO