|
OFF: Головоломка на сообразительность | ☑ | ||
---|---|---|---|---|
0
mzelensky
01.04.13
✎
15:05
|
Доброго всем!
Очередная головоломка. Исходыне данные это строка: "несла девочка 5 яблок, 4 груши и 2,5 литра молока" На выходе нужно получить табличку: "несла девочка" "5" - левый шум " " правый шум " " яблок, 4 - левый шум " " правый шум " " руши и 2,5 - левый шум " " правый шум " " литра молока Т.е. исходную строку нужно разложить на вхождения чисел (числа могут быть как целыми, так и дробными. Отделяться могут как запятой, так и точкой). Вопрос- ищу более красивый вариант решения. Кто что предложит?! |
|||
1
Eugene_life
01.04.13
✎
15:06
|
(0) Предлагаю разбить вручную.
|
|||
2
mzelensky
01.04.13
✎
15:07
|
(1) разбить что? голову об стену?
|
|||
3
sikuda
01.04.13
✎
15:07
|
Регулярные выражения, которых нет в 1С - предлагать?
|
|||
4
mzelensky
01.04.13
✎
15:09
|
(3) которых НЕТ не надо. Да и там заморочка может быть с регулярными выражениями - в исходной строке могу попадаться параметры рег.выражений ([,*,?).
В общем хотелось бы без них, но если прям ЖАЖДЕШЬ, то давай и с ними. |
|||
5
mzelensky
01.04.13
✎
15:26
|
Чет не хочет народ думать в день дурака....
|
|||
6
Karamzin
01.04.13
✎
15:30
|
(5) у кого-то это ещё и последний день отчетности годовой..
|
|||
7
mzelensky
01.04.13
✎
15:32
|
(6) меня это, слава богу, не касается :)
А вот с задачкой чет придумать нужно. Можно конечно по простому подряд символы анализировать, но думал может кто более изящное решение подскажет. |
|||
8
Karamzin
01.04.13
✎
15:35
|
завтра спроси, а то половина занята, а вторая половина думает, что это розыгрыш
|
|||
9
Зойч
01.04.13
✎
15:35
|
(7) regexp
|
|||
10
AndyD
01.04.13
✎
15:38
|
удаляй из строки все буквы, удаляй символы препинания, если перед ним пробел, а не цифра, заменяй все оставшиеся запятые и точки на один вид символов( например точка) и пользуй стандартную функцию разбития строки в массив с разделителем точка
|
|||
11
hhhh
01.04.13
✎
15:41
|
(7) давно бы уже написал, чего сидишь. Элементарная работа со строками. Причем что-то вроде выделить число в строке есть во всех типовых.
|
|||
12
Лефмихалыч
01.04.13
✎
15:44
|
(2) заметь - ты сам это предложил
|
|||
13
mzelensky
01.04.13
✎
15:46
|
(9) а как строка поиска будет выглядеть?!
|
|||
14
Kurlya
01.04.13
✎
15:46
|
а если разложить в массив с разделителем по пробелу? и потом его прогнать на число?
|
|||
15
mzelensky
01.04.13
✎
15:46
|
(12) я просто опередил тебя!
|
|||
16
mzelensky
01.04.13
✎
15:47
|
(14) строки могут быть и "грязные", например:
"партия из 12шт" или вообще вот такое "Вино12Бутыло" :) А такое тоже нужно обработать! |
|||
17
Mikeware
01.04.13
✎
15:49
|
похоже, оно пишет парсер назначений платежа...
|
|||
18
mzelensky
01.04.13
✎
15:49
|
(11) не видел такой функции в типовых. А точнее название функции и саму конфу можешь назвать?!
|
|||
19
mzelensky
01.04.13
✎
15:50
|
(17) А за "оно" ведь можно и по шапке получить!
|
|||
20
Kurlya
01.04.13
✎
15:56
|
(16) тогда только посимвольно. (17) Да, очень похоже :-)
|
|||
21
mzelensky
01.04.13
✎
15:58
|
(17)(20) в плане "для чего это нужно" не угадали, господа...да и врятли угадаете.
Посимвольно не хотелось :( но видать прийдется. |
|||
22
пыхтачокк
01.04.13
✎
16:10
|
осторожней, не создай случайно скайнет вместо парсера.
|
|||
23
mzelensky
01.04.13
✎
16:10
|
(22) поздняк метаться...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |