Бухгалтерский учет, налогообложение, отчетность, МСФО, анализ бухгалтерской информации, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Разбитие строки на подстроки

mac
читатель
офлайн
Дата регистрации: 06.05.2003
Сообщений: 66
Пост №1
 
10.06.2003 11:48

Люди, есть ли в 1С функция типа split в перле?

Т.е. возвращающая список подстрок, полученных из исходной строки по разделителю.

Нужно файлик с табличкой импортировать в 1С, соотв-но нужны значения столбцов, разделенных ,скажем, табуляцией.

mac
читатель
офлайн
Дата регистрации: 06.05.2003
Сообщений: 66
Пост №2
 
10.06.2003 15:43

"Вобщем если кому интересно, я сваял аналог split:



//******************************************************************************

// СтрРазбить(<Разделитель>,Строка,СписокПодстрок)

//

// Параметры:

// Разделитель - необязательный параметр,символ разделитель,

// по которому Строка разбивается на подстроки.

// Если не задан в СписокПодстрок возвращается

// список символов строки.

// Строка - исходная строка.

// СписокПодстрок - переменная типа "СписокЗначений",

// в которую возвращается список подстрок.

//

// Возвращаемое значение:

// длина возвращаемого списка

//

// Описание:

// Разделяет строку символов на подстроки по указанному разделителю

//

Функция СтрРазбить(Разд="""",Строчка=0,Список=0)



если (Строчка=0) или (Список=0) тогда

Сообщить("Слишком мало параметров!");

возврат 0;

конецЕсли;                                    



колво=0;

Стр=Строчка;

Список = СоздатьОбъект("СписокЗначений");

Список.УдалитьВсе();

ЧС = ?(СтрДлина(Разд)=0,1,0);

итераций = ?(ЧС=1,СтрДлина(Строчка),СтрЧислоВхождений(Строчка,Разд)+1);

для ит=1 по итераций цикл

РаздПоз = ?(ЧС=1,2,Найти(Стр,Разд));

Если РаздПоз>0 тогда

Поз = РаздПоз-1;

подстр = Лев(Стр,Поз);

Если ЧС=1 тогда

Поз=1;

конецЕсли;

Стр = Прав(Стр,СтрДлина(Стр)-(Поз+СтрДлина(Разд)));

иначе

//последняя итерация

подстр=Стр;

конецЕсли;

Если СтрДлина(подстр)>0 тогда

колво=колво+1;

Список.ДобавитьЗначение(подстр,колво);

конецЕсли;

конецЦикла;



возврат колво;



конецФункции // конец функции СтрРазбить"

Показывать по 10 20 40 сообщений

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Учет, налогообложение, автоматизация
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • ЕГАИС
Предложения партнеров
Обучение пользователей продуктов 1С

1С бесплатно 1С-Отчетность 1С:ERP Управление предприятием 1С:Бесплатно 1С:Бухгалтерия 8 1С:Бухгалтерия 8 КОРП 1С:Бухгалтерия автономного учреждения 1С:Бухгалтерия государственного учреждения 1С:Бюджет муниципального образования 1С:Бюджет поселения 1С:Вещевое довольствие 1С:Деньги 1С:Документооборот 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и кадры государственного учреждения 1С:Зарплата и управление персоналом 1С:Зарплата и управление персоналом КОРП 1С:Комплексная автоматизация 8 1С:Лекторий 1С:Предприятие 1С:Предприятие 7.7 1С:Предприятие 8 1С:Розница 1С:Управление нашей фирмой 1С:Управление производственным предприятием 1С:Управление торговлей 1СПредприятие 8

Все теги