Имя: Пароль:
1C
1С v8
Как в запросе выделить часть строки, находящуюся в кавычках?
,
0 sema76
 
15.04.16
10:08
Как в запросе выделить часть строки, находящуюся в кавычках?
1 asady
 
15.04.16
10:13
(0) средствами языка запросов 1С никак
2 RomanYS
 
15.04.16
10:16
(1) можно..., но лучше не надо
3 asady
 
15.04.16
10:17
(2) одним запросом? без перебора?
4 RomanYS
 
15.04.16
10:19
(3) да, выделить текст между первой и последней кавычкой
5 sema76
 
15.04.16
10:41
(4) И как это примерно можно сделать?
6 salvator
 
15.04.16
10:42
(5) Если позиция кавычек постоянная везде, то ПОДСТРОКА.
7 RomanYS
 
15.04.16
10:45
(5) Шаг 1 формируем таблицу чисел

ВЫБРАТЬ
    1 КАК Ц
ПОМЕСТИТЬ ЦЦ
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 2
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 3
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 4
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 5
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 6
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 7
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 8
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 9
ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ 0
;

ВЫБРАТЬ
    ЦЦ.Ц + 10 * ЦЦ1.Ц + 100 * ЦЦ2.Ц КАК Ч
ПОМЕСТИТЬ ЧЧ
ИЗ
    ЦЦ КАК ЦЦ,
    ЦЦ КАК ЦЦ1,
    ЦЦ КАК ЦЦ2
;
8 RomanYS
 
15.04.16
10:46
(7) Шаг 2. Находим позиции кавычек

ВЫБРАТЬ
    ВТ.Строка,
    ЧЧ.Ч Позиция
ИЗ
    ВТ КАК ВТ
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ЧЧ КАК ЧЧ
        ПО Подстрока(ВТ.Строка,ЧЧ.Ч,1)=""""
9 RomanYS
 
15.04.16
10:48
Ну а дальше всё зависит от того, какие кавычки тебе нужны
первая-вторая,
первая-последняя,
нечетная-четная (все пары).
10 sema76
 
15.04.16
11:10
(9) Нужны первая и вторая кавычки.
Попробую прогнать этот запрос. Хотя пока трудно его осмыслить. (Математика))
11 sema76
 
15.04.16
11:23
(9) Супер! Работает запрос!
12 sema76
 
22.04.16
14:54
(8) Обнаружилась проблема. Если строка заканчивается кавычкой все нормально, но если после кавычки есть еще пробелы, то не срабатывает код:

ВНУТРЕННЕЕ СОЕДИНЕНИЕ ЧЧ КАК ЧЧ
        ПО Подстрока(ВТ.Строка,ЧЧ.Ч,1)=""""
13 sema76
 
22.04.16
15:05
(12) Ой, не прав. Все нормально. Дело в другом. Извини.
14 Радим1987
 
22.04.16
15:44
Симв(34) = "