|
как получить из строки только 35 символов? | ☑ | ||
---|---|---|---|---|
0
ddd2005
10.06.14
✎
21:42
|
как получить из строки только 35 символов?
|
|||
1
MadHead
10.06.14
✎
21:44
|
Запросом к таблице значений, лучше всего
|
|||
2
Steel_Wheel
10.06.14
✎
21:44
|
Лев(Стр, 35)?
|
|||
3
MadHead
10.06.14
✎
21:46
|
(2) откуда взялась цифра 35?
|
|||
4
wPa
10.06.14
✎
21:47
|
LTRIM ?
|
|||
5
ddd2005
10.06.14
✎
21:47
|
(2) спасибо совсем забыл про эту фукцию
|
|||
6
ddd2005
10.06.14
✎
21:47
|
(4) такого не знал разъясни
|
|||
7
фобка
10.06.14
✎
21:48
|
(6) англ синтаксис
|
|||
8
Steel_Wheel
10.06.14
✎
21:49
|
(3) Из условия задачи, наверное.
(5) пожалуйста (4) ltrim разве не отрежет пробелы слева? Как СокрЛ()? |
|||
9
wPa
10.06.14
✎
21:49
|
(6) школьный курс. не бери в голову
|
|||
10
фобка
10.06.14
✎
21:51
|
Но ответ неверный кстати)
Лев(стр,35)+лев(Тут35пробелов, 35-длинастр(лев(стр,35))) |
|||
11
ddd2005
10.06.14
✎
21:58
|
к меня сейчас в комментарии
№ заказа: 1 747 352 от 10.06.2014 11:15:00; дата доставки 14.06.2014 0:00:00; код магазина 178; ответственное лицо Иванова Е.И.; факс (8111)511495; телефон (8111)511119; Адрес доставки г.Вологда, Окружное шоссе, д. 42 мне нужно получить № заказа: 1 747 352 от 10.06.2014 |
|||
12
ddd2005
10.06.14
✎
21:59
|
разве (2) не подойдет?
|
|||
13
ДенисЧ
10.06.14
✎
21:59
|
(11) А если номер заказа будет № заказа: 1 352 от 10.06.2014 ?
|
|||
14
kokamoonga
10.06.14
✎
22:05
|
(13) очевидно же, тогда будет ветка "как получить из строки только 29 символов?"
|
|||
15
EvgeniuXP
10.06.14
✎
22:06
|
(12) СтрЗаменить(НомерЗакаказа, Символы.ПС) и возьми все строки кроме последней.
|
|||
16
EvgeniuXP
10.06.14
✎
22:09
|
(+15) Многострочка = СтрЗаменить(НомерЗаказа, " ", Символы.ПС);
ВсегоСтрокКромеПоследней = СтрЧислоВхождений(Многострочка) - 1; Для НС = 1 По ВсегоСтрокКромеПоследней Цикл НомерЗаказа = СокрЛП(НомерЗаказа + " " + СтрПолучитьСтрокуПоНомеру(НС)); КонецЦикла типо так. |
|||
17
EvgeniuXP
10.06.14
✎
22:10
|
то что в цикле НомерЗаказа - инициализировать перед циклом как пустую, или ваще другую переменную использовать
|
|||
18
BOZKURT
10.06.14
✎
22:10
|
(0) v8: v8: Подскажите функцию разбивки строки
// Функция "расщепляет" строку на подстроки, используя заданный // разделитель. Разделитель может иметь любую длину. // Если в качестве разделителя задан пробел, рядом стоящие пробелы // считаются одним разделителем, а ведущие и хвостовые пробелы параметра Стр // игнорируются. // Например, // РазложитьСтрокуВМассивПодстрок(",ку,,,му", ",") возвратит массив значений из пяти элементов, // три из которых - пустые строки, а // РазложитьСтрокуВМассивПодстрок(" ку му", " ") возвратит массив значений из двух элементов // // Параметры: // Стр - строка, которую необходимо разложить на подстроки. // Параметр передается по значению. // Разделитель - строка-разделитель, по умолчанию - запятая. // // // Возвращаемое значение: // массив значений, элементы которого - подстроки // Функция РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Экспорт МассивСтрок = Новый Массив(); Если Разделитель = " " Тогда Стр = СокрЛП(Стр); Пока Истина Цикл Поз = Найти(Стр,Разделитель); Если Поз=0 Тогда МассивСтрок.Добавить(Стр); Возврат МассивСтрок; КонецЕсли; МассивСтрок.Добавить(Лев(Стр,Поз-1)); Стр = СокрЛ(Сред(Стр,Поз)); КонецЦикла; Иначе ДлинаРазделителя = СтрДлина(Разделитель); Пока Истина Цикл Поз = Найти(Стр,Разделитель); Если Поз=0 Тогда МассивСтрок.Добавить(Стр); Возврат МассивСтрок; КонецЕсли; МассивСтрок.Добавить(Лев(Стр,Поз-1)); Стр = Сред(Стр,Поз+ДлинаРазделителя); КонецЦикла; КонецЕсли; КонецФункции // РазложитьСтрокуВМассивПодстрок // Использование ИсходныйТекст = "№ заказа: 1 747 352 от 10.06.2014 11:15:00; дата доставки 14.06.2014 0:00:00; код магазина 178; ответственное лицо Иванова Е.И.; факс (8111)511495; телефон (8111)511119; Адрес доставки г.Вологда, Окружное шоссе, д. 42"; НомерЗаказаИДата = РазложитьСтрокуВМассивПодстрок(ИсходныйТекст, ";"); |
|||
19
EvgeniuXP
10.06.14
✎
22:12
|
(18) типовые - громоздкие и много лишнего в них.
|
|||
20
BOZKURT
10.06.14
✎
22:14
|
(19) главное суть, а переделать на "как надо", конечно можно
|
|||
21
Steel_Wheel
10.06.14
✎
22:16
|
(12) Не подойдет. Тебе надо узнать
а) точку с какой начать брать (СтрНайти() ) б) точку, где остановиться (СтрНайти() ) в) использовать Средн() |
|||
22
Steel_Wheel
10.06.14
✎
22:17
|
А еще правильнее, взять из объекта номер заказа и дату и собрать ту строку, которая нужна
|
|||
23
KUBIK
10.06.14
✎
22:19
|
(11) Надо пропарсить положение первой ";", а потом применить правильно Лев за вычетом 8 знаков (время)
|
|||
24
EvgeniuXP
10.06.14
✎
22:21
|
(23) еще правильней, язык выражений использовать.
|
|||
25
Steel_Wheel
10.06.14
✎
22:23
|
(24) если в 1с регулярки завезли, то согласен.
|
|||
26
Coldboy
10.06.14
✎
22:29
|
а в чем проблема идти по шаблону до слова "дата поставки"? и до нее все брать?
|
|||
27
PR
11.06.14
✎
09:30
|
(5) ДЕВЯТЬ лет стажа. У меня просто нет слов.
|
|||
28
Fragster
гуру
11.06.14
✎
09:32
|
(27) человек при таком стаже уже знает того, кто знает где посмотреть
|
|||
29
Fragster
гуру
11.06.14
✎
09:32
|
(28)+ скоро уже будет знать того, кто знает, кто сделает...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |