我有一个字符串,我喜欢这个string s = "09:04:31 00358800917204 FINLAND 00:00:16 2 1.56 21:18:32 00358800917204 FINLAND 00:00:16 2 1.56";
。现在根据我的要求,我必须将这个字符串分成两个子字符串,如...
string substring1 = "09:04:31 00358 FINLAND 00:00:16 2 1.56"
string substring2 = "21:18:32 00358 FINLAND 00:00:16 2 1.56"
如何像这样打破它..请帮助我..谢谢..
答案 0 :(得分:1)
您可以尝试以下操作:
var pattern = @"\d{2}:\d{2}:\d{2}\s(\d*)\s(\w*)\s\d{2}:\d{2}:\d{2}\s\d\s\d*\.\d*";
string s = "09:04:31 00358800917204 FINLAND 00:00:16 21.56 21:18:32 00358800917204 FINLAND 00:00:16 2 1.56";
var rx = new Regex(pattern, RegexOptions.Compiled | RegexOptions.IgnoreCase);
var matches = rx.Matches(s);
此模式适用于您提供的字符串,但可能必须根据您的要求进行更改。您可以在此处测试:RegExr。
答案 1 :(得分:0)
\s(?=\d+:\d+:\d+(?:(?!\d+:\d+:\d+).)*?FINLAND)
你可以通过这种方式进行拆分。实际上它是按空格分割的,前面有(time...FINLAND)
。参见演示。