ПРОДАЖА И ВНЕДРЕНИЕ 1С

по всей России

+7 (495) 223-32-11

Заказать обратный звонок

8 (800) 775-90-01

Бесплатно по России

Получить

Скорую 1С помощь

Получить

Проконсультироваться
со специалистом 1С

Консультироваться

Разлогает строку типа:
Поле1, "Сложное, с запятыми внутри Поле2", Поле3
на массимв подстрок типа:

Поле1
Сложное, с запятыми внутри Поле2
Поле3

Код 1C v 8.х
 RegExp = Новый COMОбъект("VBScript.RegExp");
      
Результат = Новый Массив();

RegExp.IgnoreCase = Ложь; //Игнорировать регистр
RegExp.Global = Истина; //Поиск всех вхождений шаблона
RegExp.MultiLine = Ложь; //Многострочный режим

RegExp.Pattern = "(?:^|;)(\""(?:[^\""]+|\""\"")*\""|[^;]*)"; //вот наш супер шаблон
//RegExp.Pattern = ";|;|;|;|;;|;|;|;|;|;|;|;|;;|;|;"; //вот наш супер шаблон
Matches=RegExp.Execute(Стр);
ЧислоВхождений=Matches.Count();
//Сообщить(Стр,СтатусСообщения.Важное);
Если ЧислоВхождений>0 Тогда
Для к = 0 По ЧислоВхождений-1 Цикл
Match = Matches.Item(к);

SubMatches = Match.SubMatches;
ЧислоПодвыражений=SubMatches.Count();
Для н = 0 По ЧислоПодвыражений-1 Цикл
SubMatch=SubMatches.Item(н);
Если SubMatch="" Тогда
//Продолжить;
КонецЕсли;
Результат.Добавить(SubMatch);
//Сообщить("Подстрока: "+SubMatch);
КонецЦикла;
КонецЦикла;
Иначе
//Сообщить("Вхождений шаблона не найдено");
КонецЕсли;
Возврат Результат;


Информация взята с сайта http://helpf.pro


Заказать обратный звонок

Позвонить
Отправлено! В самое ближайшее время наш менеджер свяжется с Вами.