Solr DIH,带有 DateFormatTransformer o RegexTransformer

问题描述

我有一个使用数据库作为源的 Solr 8.7 托管模式,我已经用所有字段配置了我的 db-data-config.xml。 我在 db 中有一个日期列,格式为 yyyyMMdd(例如 2019 年 11 月 18 日将是 20191118)。一些列具有日期值,但其他列没有。 例如我可能有 19500506 和 201507。

这是我的问题,

如果这些数据是可选的,我如何将这些数据索引到我的 Solr 字段中?

我已经尝试使用 dateTimeFormat="yyyyMMdd"dateTimeFormat="yyyyMM" 使用 DateFormatTransformer,但它只索引具有完整格式的文档。

<field column="dc_date" name="dc_date_out" dateTimeFormat="yyyyMM" />

否则,我已经尝试使用带有“replaceWith”选项的 RegexTransformer,但和以前一样,只有完整的文档被索引,其他的被跳过。

<field column="dc_date" name="dc_date_out" regex="^((18|19|20)\d\d)(\d\d)(\d*)$" replaceWith="$1-$3-$4T00:00:00Z" />

有没有办法处理可选值,如果设置了 $4,就使用它,否则将其留空(或认)

谢谢大家

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)