Как лучше найти первое вхождение символа с конца строки ? #17453


#0 by Yura
возможно-ли заставить работать Найти искать с конца ?
#1 by NS
1)перебором символов с конца строки2)нахождением первого вхождения, и резкой строки.
#2 by Yura
Ну это понятно, я ожидал какое-то чудо, недокументуемую возможность :) Всё равно сенкс.
#3 by Дяпти
Пиши ВК. Даже в вонючем бейсике есть InStrRev
#4 by Oblomov
2 А чем документированнаяпозиция = Найти(СтрокаСимволов,разделительСтрок);не подходит?
#5 by Начинающий юзер
2 Уже празднуем?
#6 by Yura
2)4( если у меня есть csv строка c неопределённым количеством полей, мне всегда нужно последнее удобно использовать НАЙТИ ?
#7 by Oblomov
2 А, что по твоему возвращает Найти(,)
#8 by Начинающий юзер
2Вау, неужели ещет с конца строки?
#9 by Oblomov
2 Найти(СтрокаСимволов,разделительСтрок); возвращает позицию ПЕРВОГО вхождения символа КОНЦА СТРОКИ, что соответствует сабжу. А что тебе на самом деле нужно было, не знаю.
#10 by Дяпти
Найти("з_а_л_у_п_а","а") = 3 :-)))
#11 by Yura
7 - чувствую подвох, если знаешь ответ напиши, если позаёмывать хочешь то иди в другую ветку. Я считаю и РТФМ мне в этом помогает, что он возвращает первое вхождение символа с НАЧАЛА строки.
#12 by Начинающий юзер
2 Русским разговорным владеете? "Конец строки" и "с конца строки" - разные вещи....
#13 by sashat
Перевернуть строку с конца и использовать Найти.Или перебором с конца строки.
#14 by mclarry
Перевернуть... монитор - достаточно будет? ;))
#15 by sashat
Нет перевернуть монитор недостаточно. :)Нужно лучше самому перевернуться.
#16 by Sure2
Предлагаю извратный способ! Работает, наверное, хуже чем посимвольный перебор ...Пока Сред(Стр,Н,1)<>Сим Цикл Н=Н-1...
#17 by Yura
16 - хм, что-то новенькое, интересно
#18 by Oblomov
2 ;-) Сори, это у меня с глазами плохо.
#19 by Начинающий юзер
2 Ничего страшного, бывает...
#20 by Yura
2 если нужен будет адвокат, я наберу :)
#21 by a13x
регескпы никто не отменял....правда, надо, чтобы wsh был установлен...
#22 by Сим
Реализация 2-го способа от NS
#23 by Mobilis
Тема уже обсуждалась. Мне понравился вариант avb :
#25 by Uho
Вот так получше:
#26 by mclarry
Попробовал, получается довольно громоздко:
#27 by Uho
А помните из школы метод половинного деления (при поиске корня)?Можно попробовать применить :))
#28 by Пудель
Великолепно!
#29 by Uho
Чего-то я не пойму...Это же тоже самое, что иСтрЧислоВхождений(МояСтрока,ИскомыйСимвол)?
#30 by IAm
Что в 23 великолепного? Там же лажа абсолютная
#31 by Yura
30,29 - 23 это тоже самое что и со списком значений в только работа с текстом, никакая не лажа, но самое оптимальное это перебор символов с конца строки.
#32 by IAm
В 23 же написано, что это вариант avb. Разве способен avb что-нибудь хорошее придумать?
#33 by Yura
надо было тогда написать - "Мой гений дарит вам вариант avb" :)
#34 by Uho
"аааа"КоличествоСтрок=3а ответ должен быть 5Или тогда так:СтрЗаменить(МояСтрока,ИскомыйСимвол,Разделительстрок);
#35 by Пудель
(29, 30, 32) 23 - это очень красиво. Со списком значений хуже, поскольку создаётся дополнительная переменная.
#36 by Спокойный
Ежли поюзать знаменитую и популярнцю среди профи ВК 1c.Addon, то последний символ будет находиться покороче :
#37 by Спокойный
+36 немного себя поправлю - узрел ошибку
#38 by Fеникс
Видимо, в следующей ветке этого цикла следует ожидать тему "Как лучше помножить два на два?"
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С