Работа со строками.
18.02.2010
11:07
#1
Помогите решить задачку
есть строка "111111 аааааааа" как мне вытянуть из этой строки символы стоящие до первого пробела(111111), чтобы записать их в другую строку
есть строка "111111 аааааааа" как мне вытянуть из этой строки символы стоящие до первого пробела(111111), чтобы записать их в другую строку
18.02.2010
11:16
#2
"Строка1 = "111111 аааааааа"
позиция = Найти(Строка1," ")
Если позиция > 0 Тогда
Строка2 = Лев(Строка1,позиция-1);
Иначе
Строка2 = Строка1;
КонецЕсли
"
позиция = Найти(Строка1," ")
Если позиция > 0 Тогда
Строка2 = Лев(Строка1,позиция-1);
Иначе
Строка2 = Строка1;
КонецЕсли
"
18.02.2010
11:48
#3
"ага получилось
Процедура Сформировать()
Спр=СоздатьОбъект("Справочник.Номенклатура");
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент()=1 Цикл
Строка1= Спр.Наименование;
позиция = Найти(Строка1," ");
Если позиция > 0 Тогда
Спр.Артикул = Лев(Строка1,позиция-1);
Иначе
Спр.Артикул = Строка1;
КонецЕсли;
Спр.Записать();
КонецЦикла;
КонецПроцедуры
А как добавить условие такого рода: обычно строки содержат в первой части до пробела символы состоящие из верхнего регистра, но есть строки содержащие в первой части до пробела символы состоящие из верхнего и нижнего регистра?
т.е. есть строка "ААААА ааааа" такие нужно обрабатывать, а бывают строки "Ааааа ааааа" и "ааааа ааааа" их ненужно обрабатывать, их нужно пропускать?"
Процедура Сформировать()
Спр=СоздатьОбъект("Справочник.Номенклатура");
Спр.ВыбратьЭлементы();
Пока Спр.ПолучитьЭлемент()=1 Цикл
Строка1= Спр.Наименование;
позиция = Найти(Строка1," ");
Если позиция > 0 Тогда
Спр.Артикул = Лев(Строка1,позиция-1);
Иначе
Спр.Артикул = Строка1;
КонецЕсли;
Спр.Записать();
КонецЦикла;
КонецПроцедуры
А как добавить условие такого рода: обычно строки содержат в первой части до пробела символы состоящие из верхнего регистра, но есть строки содержащие в первой части до пробела символы состоящие из верхнего и нижнего регистра?
т.е. есть строка "ААААА ааааа" такие нужно обрабатывать, а бывают строки "Ааааа ааааа" и "ааааа ааааа" их ненужно обрабатывать, их нужно пропускать?"
18.02.2010
11:54
#4
"> ага получилось
>
> Процедура Сформировать()
> Спр=СоздатьОбъект("Справочник.Номенклатура");
> Спр.ВыбратьЭлементы();
> Пока Спр.ПолучитьЭлемент()=1 Цикл
> Строка1= Спр.Наименование;
> позиция = Найти(Строка1," ");
> Если позиция > 0 Тогда
> Спр.Артикул = Лев(Строка1,позиция-1);
> Иначе
> Спр.Артикул = Строка1;
> КонецЕсли;
> Спр.Записать();
> КонецЦикла;
> КонецПроцедуры
в выборке лучше не записывать !
> А как добавить условие такого рода: обычно строки содержат в первой части до пробела символы состоящие из верхнего регистра, но есть строки содержащие в первой части до пробела символы состоящие из верхнего и нижнего регистра?
> т.е. есть строка "ААААА ааааа" такие нужно обрабатывать, а бывают строки "Ааааа ааааа" и "ааааа ааааа" их ненужно обрабатывать, их нужно пропускать?
делай их все в нижний регистр и анализируй далее, т.е.
АнализируемаяСтрочка = "Ааааа ааааа";
Найти(НРег(АнализируемаяСтрочка ), "ааааа ааааа") будет отличное от 0 !
"
>
> Процедура Сформировать()
> Спр=СоздатьОбъект("Справочник.Номенклатура");
> Спр.ВыбратьЭлементы();
> Пока Спр.ПолучитьЭлемент()=1 Цикл
> Строка1= Спр.Наименование;
> позиция = Найти(Строка1," ");
> Если позиция > 0 Тогда
> Спр.Артикул = Лев(Строка1,позиция-1);
> Иначе
> Спр.Артикул = Строка1;
> КонецЕсли;
> Спр.Записать();
> КонецЦикла;
> КонецПроцедуры
в выборке лучше не записывать !
> А как добавить условие такого рода: обычно строки содержат в первой части до пробела символы состоящие из верхнего регистра, но есть строки содержащие в первой части до пробела символы состоящие из верхнего и нижнего регистра?
> т.е. есть строка "ААААА ааааа" такие нужно обрабатывать, а бывают строки "Ааааа ааааа" и "ааааа ааааа" их ненужно обрабатывать, их нужно пропускать?
делай их все в нижний регистр и анализируй далее, т.е.
АнализируемаяСтрочка = "Ааааа ааааа";
Найти(НРег(АнализируемаяСтрочка ), "ааааа ааааа") будет отличное от 0 !
"
18.02.2010
13:27
#5
"> АнализируемаяСтрочка = "Ааааа ааааа";
> Найти(НРег(АнализируемаяСтрочка ), "ааааа ааааа") будет отличное от 0 !
>
Ему надо обработать те кто в верхнем регистре:
АнализируемаяСтрочка = "Ааааа"; //Эта будет пропущена
Если (ВРег(АнализируемаяСтрочка) = АнализируемаяСтрочка) Тогда
//Обрабатываем
КонецЕсли;
"
> Найти(НРег(АнализируемаяСтрочка ), "ааааа ааааа") будет отличное от 0 !
>
Ему надо обработать те кто в верхнем регистре:
АнализируемаяСтрочка = "Ааааа"; //Эта будет пропущена
Если (ВРег(АнализируемаяСтрочка) = АнализируемаяСтрочка) Тогда
//Обрабатываем
КонецЕсли;
"
Зарплата и кадры бюджетного учреждения 8.1 (1.0.9.1) - налоги по источникамЗиУп 8.1 Не формируются 2НДФЛ и файл для ИФНС по физлицам получившим доход по ЦБ
Читают тему
(гостей: 1)