2016-06-06 15 views
0

Hallo Ich habe eine CSV, die für jedes Feld durch Tabulatoren getrennt ist:Solr Regex - analysieren Tab getrennt CSV

id name subject description comments 
c4e 10181 Hello1 d1 1 
741 10181 Hello2 d2 2 
b62 10181 Hello3 d3 3 
fd4 10181 Hello4 d4 4 
2fb 10181 Hello5 d5 5 

ich es mit dem solr Regextransformer, regex wollte importieren über Dataimporthandler (DIH), aber schließlich die Regex nicht funktioniert:

<field column="id" sourceColName="rawLine" regex="^(.*)\t(.*)\t(.*)\t(.*)\t"/> 
<field column="name" sourceColName="rawLine" regex="\t(.*)\t(.*)\t(.*)\t(.*)$"/> 
<field column="subject" sourceColName="rawLine" regex="\t(.*)\t(.*)\t(.*)$"/> 
<field column="description" sourceColName="rawLine" regex="\t(.*)\t(.*)$"/> 
<field column="comments" sourceColName="rawLine" regex="\t(.*)$"/> 

Gegenstand, decription und Kommentare sind falsch, nehmen sie zusätzlich die bisherigen Felder, was falsch ist mit dem regulären Ausdruck?

+0

zu ersetzen Mögliches Duplikat von [Solr DIH regextransformer - verarbeitet nur eine CSV-Zeile] (http://stackoverflow.com/questions/37629261/solr-dih- regextransformer-processes-only-one-csv-line) –

Antwort

0

Aus Ihrer Beschreibung würde ich sagen, dass es ein Problem der Gier ist. Hilft es, jedes Auftreten von .* in den letzten 3 Zeilen zu .*?