Есть ли способ отсортировать результат textRecognition по различным массивам?

Я использую FirebaseMLKit (не на основе облака), чтобы распознать текст на квитанции. Для этого я использую этот код:

 func operateScanning(imageX: UIImage) {

    textDetector = vision.textDetector()
    let visionImage = VisionImage(image: imageX)
    textDetector?.detect(in: visionImage, completion: { (features, error) in
        guard error == nil, let features = features, !features.isEmpty else {
            print("CAN'T RECOGNIZE TEXT")
            return
        }

        print("Detected text has \(features.count) Blocks:\n\n")
        for block in features {

            print("TEXT FOLLOWS: \(block.text)")

        }

    })


}

    Swift4.2

Проблема в том, что в результате получается список строк, который содержит как "цены", так и "описания".

Я хотел бы знать, есть ли способ разделить "цены" и "описания" на два разных массива.

Моя идея состояла в том, чтобы создать массив со всеми признанными в нем строками:

    var initialArray = ["Pizza", "Apple", "20.00", "Candy", "4.20"] 

а затем разделить его на два массива. Один только с "ценами" и один с описаниями.

    var priceArray = ["20.00", "4.20"]
    var descrArray = ["Pizza", "Apple", "Candy"]

Во всяком случае, я не знаю, как это понять. Вы можете мне помочь? Я использую Xcode с Swift4.2 (macOS High Sierra)

0 ответов

Другие вопросы по тегам