Имя: Пароль:
1C
1С v8
v8: Можно обрезать предложение до последнего слова?
0 Рауф
 
04.05.13
16:27
Можна обрезать предложение до последнего слова?? Если да то объесните пожалуйста.Зарание спасибо.
1 Wobland
 
04.05.13
16:29
ищешь первый разделительный символ с конца, берёшь строку до него.
а на зачем?
2 Эмбеддер
 
04.05.13
16:38
Сейчас кто-нибудь напишет "Разрешаю"...
3 Wobland
 
04.05.13
16:41
(2) человек попросил обеснить ;)
4 Эмбеддер
 
04.05.13
16:42
если есть точка и после нее пробел или минус а потом ничего или большая буква значит это следующее предложения надеюсь объеснил
5 Wobland
 
04.05.13
16:52
(4) А.С. Пушкин - наше всё.
6 Рауф
 
04.05.13
16:57
а если нет точки и это вобше должность пишется и мне нужна толька последние слова и следуйшие слова с маленькой буквы??
7 Wobland
 
04.05.13
17:00
следуйшие слова - это те, которые после последних?
8 Wobland
 
04.05.13
17:01
приведи пример исходного и желаемого. так будет лучше ;)
9 zak555
 
04.05.13
17:02
>  и мне нужна толька последние слова

о-О

мая-сама ?
10 Wobland
 
04.05.13
17:03
(9) к нам пришёл гость из закавказья
11 Эмбеддер
 
04.05.13
17:09
ну вот похоже он сам разобрался
12 Рауф
 
04.05.13
17:41
как мне срезать предложение до последнего пробела??
13 Chai Nic
 
04.05.13
17:46
Задачка вообще-то школьная. На бейсике на уроке информатики подобным занимались в наше время.. было жутко скучно от очевидности..
14 Wobland
 
04.05.13
17:47
(12) sonunda ilk yer tapmaq, bir simli onu
15 Рауф
 
04.05.13
17:51
ну да и я тоже прослушал это урок
16 Рауф
 
04.05.13
17:52
а щас сожилею
17 Эмбеддер
 
04.05.13
17:52
(12) например так Лев(ТекстоваяСтрока, ПозицияПоследнегоПробела-1)
18 Рауф
 
04.05.13
17:53
на Русском можна вести разгавор
19 Сияющий Асинхраль
 
04.05.13
17:55
(17) Тогда уж Прав() или Сред()
20 Эмбеддер
 
04.05.13
17:58
(17) задача так поставлена, что непонятно. по мне так обрезать до последнего слова это оставить все кроме последнего слова
21 Рауф
 
04.05.13
18:02
нет надо до последнего слова все затереть
22 PR
 
04.05.13
18:03
Задача на две минуты программирования при необходимости знания всего-лишь одной строковой функции Сред.
А ТС вместо того, чтобы подумать самостоятельно, как решить простенькую задачу еще и спрашивает, можна ли на Русском вести разгавор.
23 Сияющий Асинхраль
 
04.05.13
18:04
Ну вот и программируй, бесконечный цикл :-) в котором сначала поиск первого пробела, обрезаниие строки Прав() или Сред() от пробела до конца строки, если пробела нет, то выход и цикла...
24 Рауф
 
04.05.13
18:06
а если пробелов будет дольше 3 или 5 в однов стравочнике??
25 palpetrovich
 
04.05.13
18:08
(21) до этого поста казалось что все наоборот
(7) порвало :)
зы: а задачка-то на самом деле не такая уж и тривиальная ...так и хочется сделать запрос к строке типа срез последних :)
26 Эмбеддер
 
04.05.13
18:12
Это классическая задача, впервые была решена Микеланджело в своих скульптурах
27 Сияющий Асинхраль
 
04.05.13
18:14
(24) Поэтому и сказал о цикле... А вот писать не буду, идею сказал, а дальше сам думай...
(26) :-))))) думаю таки ты не прав, он, пожалуй, впервые ее сформулировал, а вот решена она была еще и задолго до него...
28 Рауф
 
04.05.13
18:24
может вы мне всетаке паможите мне??
29 palpetrovich
 
04.05.13
18:26
короче, автор, как-то так работать будет, но на оптимальность не рассчитывай :)

   предложение = "Можна обрезать предложение до последнего слова";
   Пока НЕ Найти(предложение, " ") = 0 Цикл
       предложение = Сред(предложение, Найти(предложение, " ")+1 );
   КонецЦикла;
30 Chai Nic
 
04.05.13
18:30
Кстати, очень не хватает в функции Найти параметра "направление поиска".
31 Chai Nic
 
04.05.13
18:32
Да и поиск и выборка подстроки из строки на основе регулярных выражений тоже бы не помешали..
32 ansh15
 
04.05.13
19:03
(31)  /^.*\s+(\w+)\s*$/
То есть получить то, что в скобках, в 1С не получится?
33 Chai Nic
 
04.05.13
19:07
(32) Вроде бы через ком-объекты vbscript можно.. а нативных методов нету
34 Рауф
 
15.05.13
07:43
спасибо всем
35 НЕА123
 
15.05.13
08:19
ПредложениеСПС = СтрЗаменить(Предложение, " ", Символы.ПС);
ЗаключительноеСлово=СтрПОлучитьСтроку(ПредложениеСПС, СтрЧислоСтрок(ПредложениеСПС));
36 palpetrovich
 
15.05.13
11:02
(35) вариант ...вот еще один - ржачный :)

   Результат = "";
   ТекСимвол = "";
   Для Инд = -СтрДлина(Предложение) По 0 Цикл
       ТекСимвол = Сред(Предложение, -Инд, 1);
       Если ТекСимвол = " " Тогда
           Прервать;
       КонецЕсли;    
       Результат = ТекСимвол + Результат;
   КонецЦикла;
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс