【发布时间】:2015-04-30 04:34:08
【问题描述】:
我想将许多信息从 CSV 文件导入到 Elastic Search。 我的问题是我不知道如何使用等效的子字符串将信息选择到 CSV 列中。
在我的情况下,我有一个字段日期 (YYYYMMDD),我想要 (YYYY-MM-DD)。
我使用过滤器、变异、gsub 之类的:
filter
{
mutate
{
gsub => ["date", "[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789]", "[0123456789][0123456789][0123456789][0123456789]-[0123456789][0123456789]-[0123456789][0123456789]"]
}
}
但我的结果是错误的。 我可以识别我的字符串,但我不知道如何提取其中的一部分。
我的目标是:
gsub => ["date", "[0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789][0123456789]","%{date}(0..3}-%{date}(4..5)-%{date}"(6..7)]
%{date}(0..3} : 从 csv 列日期的第一个到 4 个字符中选择
【问题讨论】:
标签: csv filter elasticsearch substring logstash