Написать функцию разбивки текста на DELPHI 6
Необходимо написать функцию разбивки текста на DELPHI 6 по следующим условиям.
1. Входная строчка STRING
2. Разбивка на строчки по примерно 400 000 символов
3. Разбивка с учетом разделителя в строке ),(
Основная функция работ данной функции заключается, что бы при разбитии на каждые 400000 символов, строка не билась в произвольном месте, а только по ),( тем самым выполнялся SQL запрос.
Пример использования функции
Исходная строка может содержат пару миллионов символов. SQL := "INSERT IGNORE INTO uc_product (`ext_id`,`model`,`sku`,`upc`,`location`,`quantity`,`stock_status_id`,`image`,`manufacturer_id`,`shi pping`,`price`,`points`,`tax_class_id`,`date_available`,`weight`,`weight_class_id`,`length`,`width`, `height`,`length_class_id`,`subtract`,`minimum`,`sort_order`,`status`,`date_added`,`date_modified`,` viewed`) values ('1','1','1','1','1','1','1',' 1','0','1','1','1','1','1',' 1','1','1','1','1','1','1',' 1','1','1','1','1','0'),очень много таких же значений,('2','1','1','1','1','1',' 1','1','1','0','1','1','1','1' ,'1','1','1','1','1','1','1' ,'1','1','1','1','1','0'),"
Что мы должны получить в итоге
Первая строка длинной примерно 400000 символов – "INSERT IGNORE INTO uc_product
(`ext_id`,`model`,`sku`,`upc`,`location`,`quantity`,`stock_status_id`,`image`,`manufacturer_id`,`shi pping`,`price`,`points`,`tax_class_id`,`date_available`,`weight`,`weight_class_id`,`length`,`width`, `height`,`length_class_id`,`subtract`,`minimum`,`sort_order`,`status`,`date_added`,`date_modified`,` viewed`) values ('1','1','1','1','1','1','1',' 1','0','1','1','1','1','1',' 1','1','1','1','1','1','1',' 1','1','1','1','1','0')
Вторая строка длинной примерно 400000 символов – "INSERT IGNORE INTO uc_product
(`ext_id`,`model`,`sku`,`upc`,`location`,`quantity`,`stock_status_id`,`image`,`manufacturer_id`,`shi pping`,`price`,`points`,`tax_class_id`,`date_available`,`weight`,`weight_class_id`,`length`,`width`, `height`,`length_class_id`,`subtract`,`minimum`,`sort_order`,`status`,`date_added`,`date_modified`,` viewed`) values ('2','2','2','2','2','2','2',' 2','0','1','1','1','1','1',' 1','1','1','1','1','1','1',' 1','1','1','1','1','0')
и так далее пока изначальная строка не будет разбита на все части по 400000 символов.