Помощь с рег выражнением - нужно поделить на строки

  • Автор темы Автор темы CrazyHacKeRs
  • Дата начала Дата начала

CrazyHacKeRs

Guest
Помощь с рег выражнением - нужно поделить на строки

В результате преобразования XML +XSLT получилось куча запросов - для нектороых документов порядка 1-3 мег - в одну строку....

Запросы разделяются точкой-запятой.
Есть глюки, по загрузке в БД,подозреваю что такой объем просто не переваривается (postgres), отчего решил делать все по одной шт.



Помогите сделать правильный сплит этой штуки на части
[SQL]
SELECT aaaaa; SELECT bbbbb; итд
[/SQL]

причем могут попдаться INSERT'ы с точкой-запятой внутри значений
[SQL]
INSERT .... VALUES ('aaaaa;bbbb','...')
[/SQL]

желательно бы это тоже учитывать
 
1. попробуй скормить консольному клиенту. насчет psql не знаю, а, например, mysql съедает на ура. попробуй

2. при преобразовании ты можешь вставлять между запросами свой разделитель?
 
Originally posted by csa
2. при преобразовании ты можешь вставлять между запросами свой разделитель? [/B]
Могу, только я не знаю какой символ используется в данных, от того и проблемы
 
Приведенный регекс режит значения внутри!!!

Например

Код:
...VALUES ('& 12 3')

----
Редактирую в третий раз- вместо амперсанда в оригинале стоит у меня слово AMP после которого точка запятой
 
Ну так этот вариант сработает, насколько я понимаю, если каждый запрос на новой строчке?
 
Мне нужно это делать из под программы (на автомате)
Плюс ко всему, файлов очень много получается > 400 шт.
 
Нихх не понял. Из под какой программы, и при чем тут это ваще?
 
Я понял так, что ты предлагаешь ззагружать эти SQL через внешние инструменты.

Меня это вариант не устраивает, та к как приедтся делать вручную, а процесс нужно автоматизировать.

Вкратце, это синхронизация двух баз хитрым способом.
Сперва идет считывание всей необходимой инфы, генерация XML данных. (WIN)

Второй этап, это переобразование (формирование SQL запросов для промежуточной БД, а также загрузка)
(Unix, PHP)

После того как информация загруженна в п2, делаются некоторые манипуляции - в резульатте чего идет окончательный перенос из БД2 в БД3
 

ИЗВИНИ!!! НЕПРАВИЛЬНО ПРОЧИТАЛ ТВОЕ СООБЩЕНИЕ!!!

ТЕПЕРЬ ПОНЯЛ ЧТО ТЫ ХОТЕЛ СКАЗАТЬ :)
 
А как этим пользоваться? Маленький пример хотя бы, а то док нет....
 
У меня вот тоже заморока с регуярными выражениями, но там их полно, так что я решил rtfm,rtfm,rtfm! Дайте пожалуйста ссылку на какой-нибудь учебник/статью по регулярным выражениям и функциям, чтобы оно было профессионально, кратко написанно, но давало максимум инфомации от начала до конца. Ну или вроде того. =)
 
DEBRIS php.spb.ru - там про реги 2 или 3 статьи и хорошие примеры.
 
Сверху