![]() |
![]() |
![]() |
|
Поиск в тексте Ø |
☑ | ||
---|---|---|---|---|
0
SergeyN
04.10.05
✎
08:05
|
Как найти кавычки в тексте?
При перносе информации через текстовый файл с разделителями каждая пара кавычек является одним элементом. А если в переносимой текстовой информации есть дополнительные кавычки, то элементов в строке становится гораздо больше чем надо. |
|||
1
Морозов Александр
04.10.05
✎
08:17
|
Пример строки то хоть покажи
|
|||
2
SergeyN
04.10.05
✎
08:24
|
"Кресло","2","200.35","Фирма "МебельПлюс""
Так вот нужно найти восьмую и девятую кавычку и заменить на () скобки |
|||
3
Glide
04.10.05
✎
08:26
|
(0) выбери другой разделитель - хотя бы РазделительСтрок.
Или у тебя строки и с табуляцией встречаются? Вообще для переноса через текстовый файл в качестве разделителя выбирается неиспользуемый символ или производится подмена этого символа в исходных данных |
|||
4
Sasha
04.10.05
✎
08:28
|
А как у тебя формируется эта строка?
|
|||
5
lalex23
04.10.05
✎
08:32
|
(3) ну или при выгрузке меняй "" на что нибудь типа | и при загрузке меняй взад, если уж сильно нравится пользовать "" как разделитель, хотя в таких случаях я при выгрузке на всякий случай преобразовываю строку, что б разделитель не попался случайно
|
|||
6
Glide
04.10.05
✎
08:32
|
(2) Если файл входящий от других, то вырезай данные в два шага:
1. Обрезать первый и последний символ строки 2. РазделительДанных=CHR(0022)+","+CHR(0022) или как там кавычки называются |
|||
7
SergeyN
04.10.05
✎
08:34
|
Сначала я формирую текстовый файл (см. пример), а затем из этого файла беру строки и используя \\ИзСтрокиСРазделителями(<Строка>)\\ разбиваю на элементы. А лишние кавычки мешают.
Вопрос такой: можно или нельзя найти кавычки в текстовой строке средствами 1С. |
|||
8
lalex23
04.10.05
✎
08:36
|
(7)для тех кто в танке -
когда выгружаешь: стрзаменить(выгружаемаястрока,"""","|") когда загружаешь стрзаменить(выгружаемаястрока,"|","""") |
|||
9
SergeyN
04.10.05
✎
08:44
|
Сам ты в танке...
Туда, сюда - она мне строку и повторит. Мне надо убрать только 8 и 9 кавычку (см. пример) |
|||
10
SergeyN
04.10.05
✎
08:47
|
Возвращаясь к 6 посту. какой код у кавычек?
|
|||
11
SergeyN
04.10.05
✎
08:49
|
+9 Убрать надо при создании текстового файла.
|
|||
12
lalex23
04.10.05
✎
08:51
|
млин...
перед тем как запихивать в список свои строки преобразовывай строки и в файле НЕ будет левых "" после того как достанешь ИзСтрокиСРазделителями ты ж пробежишь по списку, доставая строки - вот тогда и форматируешь их в первозданный вид - или я в танке. или я цели не понял... |
|||
13
SergeyN
04.10.05
✎
08:55
|
Видимо цели не понял.
|
|||
14
lalex23
04.10.05
✎
08:55
|
или покажи куски кода выгрузки/загрузки
|
|||
15
SergeyN
04.10.05
✎
09:08
|
Нашел!!!
//Стр - текстовая строка Стр = СтрЗаменить(Стр,Симв(34)+","+Симв(34),"ёё"); // Заменяем "," на нечто Стр = СтрЗаменить(Стр,Симв(34),"\"); //Заменяем оставшиеся кавычки на \ Стр = СтрЗаменить(Стр,"ёё",Симв(34)+","+Симв(34)); //Заменяем нечто на "," Стр = Симв(34) + Сред(Стр,2); //Заменяем первый символ на кавычки Стр = Лев(Стр,СтрДлина(СокрЛП(Стр))-1) +Симв(34) ; // и последний тоже Сообщить(Стр); Всем спасибо! |
|||
16
lalex23
04.10.05
✎
09:18
|
что это было...???
ну куда то в нужном направлении... |
|||
17
Чеширский
04.10.05
✎
09:23
|
СпСтроки=глРазложить(СтрокаСКавычками,"""");
Результ=""; Для й=1 по СпСтроки.РазмерСписка() Цикл Если (й=8)ИЛИ(й=9) тогда Результ=СпСтроки.ПолучитьЗначение(й)+"(";//ну или что там у тебя Иначе Результ=СпСтроки.ПолучитьЗначение(й)+""""; КонецЕСли; |
|||
18
SergeyN
04.10.05
✎
09:59
|
17 не есть "Good"
Это в конкретном примере они 8 и 9, а могут быть где угодно. 15 бест форева - работает "проверено на себе". |
|||
19
SergeyN
04.10.05
✎
10:02
|
Если кто не понял Симв(34) - это символ " кавычки (код 34)
ёё - сочетание символов, которое в реальной жизни практически не встречается. |
|||
20
zzz
04.10.05
✎
10:06
|
2(19) ОднаКавычка = """";
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |