2012-11-06 44 views
4

我有一个数据列表,所有格式都需要在Weka中分析。用引号括起日期的正则表达式

我需要用引号括起来“”日期/时间值,但不能制定出一个正则表达式来完成它..

我需要从这个更改行:

1028,NULL,1,21,7,AD9,06A,60136859,NULL,1,4,3,2012-02-21 10:05:00.100,2012-02-21 10:05:23.170 

到这样的行:

1027,NULL,1,21,7,AD9,06A,60136859,NULL,1,5,4,"2012-02-21 10:03:53.643","2012-02-21 10:04:29.787" 

其中的日期/时间值由引号所包围。

回答

4

只要您的日期时间值总是完全格式化,这将工作在记事本+ +。

Find what: (\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}.\d{3}) 
Replace with: "\1" 

这是因为反向引用。在括号内捕获的所有内容都存储为反向引用。通过键入\number来访问反向引用,其中数字与正则表达式中括号的位置相关。因此,因为我们只使用一对括号,所以需要反向引用1,我们使用\1

所以你找到了entire date,由于正则表达式中的括号,它被存储在\1中。然后,您将entire date替换为"entire date"又名"\1"

+0

完美的作品!非常感谢。很好的解释。 –