|
Перебрать строку | ☑ | ||
---|---|---|---|---|
0
karpos
19.06.14
✎
09:47
|
Всем привет не подскажите как передрать строку.
Почему я не могу сделать так Строка = "1234hfkls222" Для Индекс = 0 По СтрДлинна(Строка) Сообщить(Строка[Индекс]); КонецЦикла и еще так есть Функция найти(1234hfkls222, "h") она возвращает не сам элемент а его индекс в строке как я понял |
|||
1
ДенисЧ
19.06.14
✎
09:48
|
Сообщить(Сред(Строка, Индекс, 1));
|
|||
2
Wobland
19.06.14
✎
09:49
|
слово "длина" пишется с двумя Н, только когда она очень длинная
|
|||
3
karpos
19.06.14
✎
09:51
|
это точно
|
|||
4
karpos
19.06.14
✎
09:51
|
не там не много другая тема
|
|||
5
karpos
19.06.14
✎
09:51
|
НаборЦифр = "1234567890";
Текст = "Я14:00"; Для Индекс = 0 По СтрДлина(Текст) Цикл Результат = Найти(НаборЦифр, Текст[Индекс]); Сообщить(Результат); КонецЦикла; |
|||
6
Wobland
19.06.14
✎
09:52
|
(4) следует ли из этого вывод, что там много другая тема?
|
|||
7
karpos
19.06.14
✎
10:01
|
я хочу перебрать строку Текст
потом Найти(НаборЦифр, СимволВстрокеТекст) он мне вернет полицию символа в строке набор цифр потом я через сред() вытаскиваю значение вот |
|||
8
Крошка Ру
19.06.14
✎
10:01
|
(0) 1. Функция "Найти" возвращает не индекс, а позицию символа.
2. В цикле будет выход индекса за пределы допустимых значений. 3. Чем тебя не устраивает (1) ? 4. И, да, "передрать строку" - это круто! Может поэтому и не работает? |
|||
9
karpos
19.06.14
✎
10:03
|
ребят я тороплюсь извиняюсь за ошибки
|
|||
10
Wobland
19.06.14
✎
10:04
|
(7) поздравлять или как?
|
|||
11
Крошка Ру
19.06.14
✎
10:08
|
(7) То есть ты передаешь коду символ, а он возвращает тебе его обратно? Это тебе просто поиграть не с кем?
|
|||
12
Wobland
19.06.14
✎
10:11
|
(11) это он второй день не может найти первую цифру в строке
|
|||
13
karpos
19.06.14
✎
11:50
|
НаборЦифр = "1234567890";
Текст = "Я14:00"; Для Индекс = 0 По СтрДлина(Текст) Цикл Сообщить(Сред(Строка, Индекс, 1)); КонецЦикла; теперь он перебирает а если так не могу понять почему не работает Сред(НаборЦифр, Найти(НаборЦифр, (Сред(Строка, Индекс, 1), 1); и все это в цикле который выше |
|||
14
Wobland
19.06.14
✎
11:52
|
(13) с переменными разберись. то строка, то текст
|
|||
15
karpos
19.06.14
✎
12:08
|
есть такое просто немного разные версий
|
|||
16
РенеДекарт
19.06.14
✎
12:13
|
(0)>>она возвращает не сам элемент а его индекс в строке как я понял
странно было бы, если бы передав куда-то символ - ожидать его же получить обратно. |
|||
17
dmitn
19.06.14
✎
12:18
|
(2) см. gramota.ru
|
|||
18
karpos
19.06.14
✎
12:24
|
не смотрите вот тут у меня
Для Индекс = 0 По СтрДлина(Текст) Цикл Сообщить(Сред(Строка, Индекс, 1)); КонецЦикла; перебирается строка я хочу символы в этой строке сравнить НаборЦифр = "1234567890"; и если есть совпадения пусть он мне вернет |
|||
19
Wobland
19.06.14
✎
12:24
|
сравнивай уже коды символов
|
|||
20
Fragster
гуру
19.06.14
✎
12:25
|
(19) это не очень хорошо
|
|||
21
Wobland
19.06.14
✎
12:25
|
+(19) НаборЦифр разрывает твой мозг
|
|||
22
Fish
19.06.14
✎
12:26
|
(18) Ты хочешь проверить, есть ли в твоей строке цифры? Я правильно понял задачу?
|
|||
23
Ненавижу 1С
гуру
19.06.14
✎
12:27
|
(18) символы в строке 1С вообще-то с 1 начинаются
|
|||
24
Сергей Д
19.06.14
✎
12:28
|
(7) ПОЛИЦИЮ символа - это круто. :)
Так и не понял, чего надо сделать. |
|||
25
hhhh
19.06.14
✎
13:30
|
(24) найти первую цифру в строке
|
|||
26
karpos
19.06.14
✎
14:58
|
да да я хочу проверить есть в той строке цифры может что то подскажите
|
|||
27
Wobland
19.06.14
✎
15:01
|
(26) проверить? Найти(стр, "01234567890")>0
|
|||
28
karpos
19.06.14
✎
15:02
|
не только проверить но вернуть цифры, я хочу отделить буквы и цифры
|
|||
29
Wobland
19.06.14
✎
15:07
|
(28) ты когда начнёшь соображать и говорить? строку посимвольно перебираешь. в чём затык?
|
|||
30
katc
19.06.14
✎
15:20
|
"Для Индекс = 0 По СтрДлина(Текст)-1 Цикл"
а то получишьошибку |
|||
31
karpos
19.06.14
✎
15:27
|
есть строка вида ВТ14:00, ВТ8:00, Я8:00 я хочу чтоб он она стали вида 14:00, 8:00
|
|||
32
Wobland
19.06.14
✎
15:28
|
(31) а затык в чём?
|
|||
33
Fish
19.06.14
✎
15:45
|
(31) Можно так:
Если Найти(Текст,"ВТ") > 0 Тогда Текст = СтрЗаменить(Текст,"ВТ",""); ИначеЕсли Найти(Текст,"Я") > 0 Тогда Текст = СтрЗаменить(Текст,"Я",""); КонецЕсли; |
|||
34
Fish
19.06.14
✎
15:46
|
+(33) И никаких переборов :))
|
|||
35
Borteg
19.06.14
✎
15:51
|
СтрокаПроверки = СокрЛП(СтрокаПроверки);
Длина = СтрДлина(СтрокаПроверки); НужнаяСтрока = ""; Для Ном = 1 По Длина Цикл Если НЕ Найти("0123456789:", Сред(СтрокаПроверки, Ном, 1)) = 0 Тогда НужнаяСтрока = НужнаяСтрока+Сред(СтрокаПроверки, Ном, 1); КонецЕсли; КонецЦикла; Возврат НужнаяСтрока |
|||
36
kosts
19.06.14
✎
16:09
|
(31)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |