replace value(a, csv b, column c, default d, [encoding e, key column f, delimiter g])
Gruppe |
Sucht den Wert a in der Schlüsselspalte einer CSV-Datei b. Wird der Wert gefunden, gibt die Funktion den Wert aus der angegebenen Ersetzungsspalte c zurück, wird der Wert nicht gefunden, wird der Parameter d zurückgegeben. Ist nicht die erste Spalte die Schlüsselspalte, kann die zu verwendende Spalte über f festgelegt werden, ein vom System Encoding abweichender Zeichensatz wird über Parameter e festgelegt.
Zeilen in der CSV-Datei, die mit # beginnen, sind Kommentarzeilen. Die formale Struktur der CSV-Datei muss fehlerfrei sein, d.h. wenn der Wert in Spalte n gesucht ist oder Spalte n als Schlüssel verwendet wird, müssen alle Datenzeilen auch n Spalten haben, also mindestens n-1 Kommata enthalten. Andernfalls tritt eine IndexOutOfBoundsException auf.
Das Default-Spalten-Trennzeichen ist Komma. Mit Parameter g kann ein anderes Spalten-Trennzeichen angegeben werden. Der Wert in Parameter g wird getrimmt und danach das erste Zeichen verwendet. Um TAB oder SPACE als Trennzeichen zu definieren, verwenden Sie bitte \TAB bzw. \SPACE in Parameter g.
Parameterbeschreibung
Parameter |
Beschreibung |
a |
Wert, nach dem in der Schlüsselspalte gesucht wird. |
b |
Name der CSV-Datei. |
c |
Spalten-Nummer des Rückgabewertes, beginnend mit 1. |
d |
Rückgabewert, wenn der Schlüssel nicht gefunden wurde. |
e |
(optional) Zeichenkodierung der CSV-Datei. Default: System-Encoding, bzw. 8859_1, wenn keines vorhanden ist. |
f |
(optional) Spalten-Nummer für Schlüssel. Default: 1. |
g |
(optional) Optionales CSV-Feldtrennzeichen. Default: Komma. |
Beispiele
Gegeben sei folgende CSV-Datei ./conf/myCSVValues.csv
key1,key2,val1,val2,val3
key3,key4,val4,val5,val6
Parameter a |
Parameter b |
Parameter c |
Parameter d |
Parameter e |
Parameter f |
Ergebnis |
key1 |
./conf/myCSValues.csv |
5 |
Kein Wert gefunden |
|
|
val3 |
key2 |
./conf/myCSValues.csv |
5 |
Kein Wert gefunden |
|
|
Kein Wert gefunden |
key2 |
./conf/myCSValues.csv |
4 |
Kein Wert gefunden |
|
2 |
val2 |
xyz1 |
./conf/myCSValues.csv |
5 |
ABC |
|
|
ABC |
key3 |
./conf/myCSValues.csv |
3 |
Kein Wert gefunden |
|
|
val4 |
key4 |
./conf/myCSValues.csv |
4 |
Kein Wert gefunden |
|
2 |
val5 |
key1 |
./conf/myCSValues.csv |
12 |
ABC |
|
|
Abbruch mit Fehler. |
Siehe auch
replace value(a, name of file b, default value c[, wildcard d])
replace value(a, list b, list c, default d, [contains-mode e])
replace value by range(a, name of file b, default value c[, comparetype d])
replace value(a, csv/xls(x) b, column c, default d, [encoding e, key column f, delimiter g, sheet h]