Question

Bonjour, j'ai un fichier avec le contenu suivant.le personnage '.'dénote l'espace.

abc-a-1..............lime..............red........
xyz..................peach.............yellow.....

Je veux utiliser le gestionnaire d'importation de données pour analyser ces données dans trois champs.C'est ce que j'ai jusqu'à présent -

<entity name="iCode" processor="LineEntityProcessor" url="file.csv" 
                   dataSource="find_file"
                   transformer="RegexTransformer,TemplateTransformer">

  <field column="code" regex="^(\w*)"  sourceColName="rawLine" />
  <field column="fruit" regex="(\W)\b.*"  sourceColName="rawLine" />
  <field column="color" regex="(\w*)\s*$"  sourceColName="rawLine" />

</entity>

L'importation fonctionne avec succès, mais je ne reçois aucun document créé dans SOLR.Je crois que la regex n'est pas correcte.

Des idées Comment puis-je obtenir cela pour travailler?

Était-ce utile?

La solution

essayer

<field column="code" regex="^(\S+)" />
<field column="fruit" regex="(\S)+(?=\s+\S+\s+$)" />
<field column="color" regex="(\S+)(?=\s+$)" />

  • La première correspond à toutes les non-épaces non-blouses au début de la ligne.
  • La seconde correspond à tous les espaces non blanchisseurs suivis des espaces blanchisseurs et des non-espaces à la fin de la ligne, les laissant hors du résultat.
  • Le troisième correspond à tous les espaces non blanchisseurs suivis des espaces blanchisseurs à la fin de la ligne, les laissant hors du résultat.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top