У меня есть таблица Excel, которая заполнена ячейками меток слева от соответствующих ячеек значений.Например:
E F
3 Invoice Number "ABC123"
4 Issue Date "2018-04-01"
5 Amount Due 298.43
Я не могу полагаться на значения, которые я хочу, чтобы они находились в одной и той же статической ячейке с каждой обрабатываемой электронной таблицей.
Я хочу использовать регулярное выражение для поиска ячейки метки(столбец E), который соответствует значению, которое я хочу (столбец F), затем установите значение для переменной.
Я выполняю рефакторинг в Java (используя библиотеку Apache POI) устаревшего кода, изначально написанного с использованием Python.Код Python использует следующий синтаксис для достижения вышеуказанной цели:
for row in range(startrow, row+1):
if str(rowdata[0].lower().find("invoice number")) > -1:
invoice_number = rowdata[i+1]
Я не могу найти эквивалентную функциональность в документации по Apache POI.Пример псевдокода того, что я пытаюсь сделать:
String invoiceNumber;
Iterator<Row> rowIterator = sheet.iterator;
while(rowIterator.hasNext()) {
Row row = rowIterator.next();
Iterator<Cell> = row.cellIterator();
while(cellIterator.hasNext()) {
if (cell.matches("invoice number") {
invoiceNumber = cell + 1
}
}
}
Любой толчок в правильном направлении будет принят с благодарностью.