Javascript 正则表达式提取特定模式的段落
我有一个日志,模式如下:Javascript 正则表达式提取特定模式的段落,javascript,regex,Javascript,Regex,我有一个日志,模式如下: 2018-06-08 11:32:06 INFO 1 Global.asax - Service Starting 2018-06-08 11:33:06 INFO 1 Blah Blah Blah Blah Blah Blah Blah xxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxx 2018-06-08 11:34:06 INFO 1 yyyyyyyyyyyyyyyyyy 我想用正则表达式
2018-06-08 11:32:06 INFO 1 Global.asax - Service Starting
2018-06-08 11:33:06 INFO 1 Blah Blah Blah Blah
Blah Blah Blah
xxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxx
2018-06-08 11:34:06 INFO 1 yyyyyyyyyyyyyyyyyy
我想用正则表达式提取以下结果:
2018-06-08 11:32:06 INFO 1 Global.asax - Service Starting
及
及
这是迄今为止我尝试过的最接近的结果
(\d{4})[\D](\d{2})[\D](\d{2})[\s](\d{2})(\D)(\d{2})(\D)(\d{2}).*+
哦,我很接近,答案是这样的 (\d{4})\d\d\s(\d{2})(\d)(\d{2})[\s\s]+?(?=(\d{4})\d\d\s(\d{2})(\d)(\d{2})|\Z) 感谢Toto的更新
\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}[\s\S]+?(?=\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}|\Z)
请包括你的JavaScript代码。为什么所有这些捕获组和无用的字符类<代码>\d{4}-\d{2}-\d{2}\d{2}:\d{2}:\d{2}[\s\s]+(?=\d{4}-\d{2}-\d{2}\d{2}:\d{2}:\d{2}\Z)足够了。@Toto-
[\s\s]
?我知道这个答案中的表达是这样的,但这和任何字符都不匹配吗?@nnnn:是的。它匹配所有字符,包括换行符。@Toto在javascript上尝试过,但缺少最后一行,似乎\z在javascript上不起作用。还有别的选择吗?非常感谢。
(\d{4})[\D](\d{2})[\D](\d{2})[\s](\d{2})(\D)(\d{2})(\D)(\d{2}).*+
\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}[\s\S]+?(?=\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}|\Z)