const string input = "===== Action: [Action1] State: [State1] by:[user1] at [timestamp1] ===== [Notes1]===== Action: [Action2] State: [State2] by:[user2] at [timestamp2] ===== [Notes2]";
Regex expression = new Regex(@"===== Action: (?<Action>.*?)State:(?<State>.*?)by:(?<userid>.*?)at(?<timestamp>.*?)=====(?<Note>.*?)");
var results = expression.Matches(input);
foreach (Match match in results)
{
Console.WriteLine("UserId:" + match.Groups["userid"].Value);
Console.WriteLine("Action:" + match.Groups["Action"].Value);
Console.WriteLine("State:" + match.Groups["State"].Value);
Console.WriteLine("TimeStamp:" + match.Groups["timestamp"].Value);
Console.WriteLine("Note:" + match.Groups["Note"].Value);
}
我能够正确解析除Note之外的所有值。任何想法我做错了什么?如何匹配行尾的句子?
我编辑了自己的冠军。请参阅:“[应该在其标题中包含”标签“](http://meta.stackexchange.com/questions/19190/)”,其中的共识是“不,他们不应该”。 – 2013-02-27 16:50:47
我们能否定义您的需求和/或预期产出与实际产出? – 2013-02-27 16:52:23