Имя: Пароль:
1C
 
Разбить сроку на 3 части
,
0 Casper21
 
21.12.15
19:57
Разбить сроку "Иванов Иван Иванович" на 3 переменных
1- Иванов
2- Иван
3- Иванович
1 regniws
 
21.12.15
19:59
СтрРазделить (StrSplit)
Только для ФИО это не работает.
2 Casper21
 
21.12.15
20:04
а как тогда розделить ФИО контрагента?
3 regniws
 
21.12.15
20:05
РегламентированнаяОтчетность.РазложитьФИО
4 Лефмихалыч
 
21.12.15
20:08
мнСтрока = СтрЗаменить("Иванов Иван Иванович", " ", Символы.ПС);
Для СчЦ = 1 по 3 Цикл
   Сообщить(СтрПолучитьСтроку(СчЦ));
5 regniws
 
21.12.15
20:08
(4) И если отчества нет? А если отчество из двух слов?
6 Лефмихалыч
 
21.12.15
20:09
(5) для первого случая - По СтрЧислоСтрок(мнСтрока)
для второго - все сломалось
7 Лефмихалыч
 
21.12.15
20:10
точно так же товарищ Чен Ю Сю Валентин Петрович окажется слегка обижен
8 Злопчинский
 
21.12.15
22:42
(4) для первого все тоже сломалось, так как совсем не факт что между словами будут по 1 пробелу...
9 Casper21
 
22.12.15
11:17
(4) мнСтрока = СтрЗаменить("Иванов Иван Иванович", " ", Символы.ПС);
Сообщить(мнСтрока);

разделяет на 3 строки да ??
А как каждому слову присвоить переменную, мне потом надо каждое слово отдельно использовать
10 Лефмихалыч
 
22.12.15
11:19
(9) дочитай четвертый пост до конца

(8) с такими вводными задача решения не имеет, смысл это обсуждать?
11 mikecool
 
22.12.15
11:19
(9) читай (4) до конца
12 Casper21
 
22.12.15
11:29
(10) ну если предположить что там 1 пробел будет всегда и всегда 3 слова

Процедура КнопкаВыполнитьНажатие(Кнопка)
    мнСтрока = СтрЗаменить("Иванов Иван Иванович", " ", Символы.ПС);
    Для СчЦ = 1 по 3 Цикл
        Сообщить(СтрПолучитьСтроку(СчЦ,1));
    КонецЦикла;    
КонецПроцедуры
    

СтрПолучитьСтроку(СчЦ, ?) там 2 обязательных параметра
я написал "1". В результате выводит числа 1 2 3
13 salvator
 
22.12.15
11:42
(12) Параметры:
<Строка> (обязательный)
Тип: Строка.
Исходная строка.
<НомерСтроки> (обязательный)
Тип: Число.
Номер получаемой строки. Нумерация строк в многострочной строке начинается с 1.

Что непонятного?
14 Cashtane_
 
22.12.15
11:50
// Функция "расщепляет" строку на подстроки, используя заданный
//        разделитель. Разделитель может иметь любую длину.
//        Если в качестве разделителя задан пробел, рядом стоящие пробелы
//        считаются одним разделителем, а ведущие и хвостовые пробелы параметра Стр
//        игнорируются.
//        Например,
//        РазложитьСтрокуВМассивПодстрок(",ку,,,му", ",") возвратит массив значений из пяти элементов,
//        три из которых - пустые строки, а
//        РазложитьСтрокуВМассивПодстрок(" ку   му", " ") возвратит массив значений из двух элементов
//
//    Параметры:
//        Стр -             строка, которую необходимо разложить на подстроки.
//                        Параметр передается по значению.
//        Разделитель -     строка-разделитель, по умолчанию - запятая.
//
//
//    Возвращаемое значение:
//        массив значений, элементы которого - подстроки
//

Функция РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Экспорт
    
    МассивСтрок = Новый Массив();
    Если Разделитель = " " Тогда
        Стр = СокрЛП(Стр);
        Пока 1=1 Цикл
            Поз = Найти(Стр,Разделитель);
            Если Поз=0 Тогда
                МассивСтрок.Добавить(Стр);
                Возврат МассивСтрок;
            КонецЕсли;
            МассивСтрок.Добавить(Лев(Стр,Поз-1));
            Стр = СокрЛ(Сред(Стр,Поз));
        КонецЦикла;
    Иначе
        ДлинаРазделителя = СтрДлина(Разделитель);
        Пока 1=1 Цикл
            Поз = Найти(Стр,Разделитель);
            Если Поз=0 Тогда
                МассивСтрок.Добавить(Стр);
                Возврат МассивСтрок;
            КонецЕсли;
            МассивСтрок.Добавить(Лев(Стр,Поз-1));
            Стр = Сред(Стр,Поз+ДлинаРазделителя);
        КонецЦикла;
    КонецЕсли;
    
КонецФункции // глРазложить
AdBlock убивает бесплатный контент. 1Сергей