|
Как из строки из трех слов получить строку из двух первых слов (отрезать последнее слово) | ☑ | ||
---|---|---|---|---|
0
ktu78
28.12.15
✎
15:25
|
Добрый день, скажите пожалуйста, как из строки с трех слов получить строку с двух первых слов, например есть фамилия имя отчество, а нужно получить фамилия имя. Спасибо
|
|||
1
Mikeware
28.12.15
✎
15:25
|
Взять первые два слова.
ваш КО |
|||
2
butterbean
28.12.15
✎
15:26
|
ща начнется
|
|||
3
Mikeware
28.12.15
✎
15:26
|
(2) уже
|
|||
4
Serg_1960
28.12.15
✎
15:26
|
он сам виноват, он первый начал :)
|
|||
5
ktu78
28.12.15
✎
15:26
|
а как взять если можно в коде. спасибо
|
|||
6
ДаЛадно
28.12.15
✎
15:27
|
Отнять третье слово
|
|||
7
Timon1405
28.12.15
✎
15:27
|
нужно просто отбросить третье слово
|
|||
8
ktu78
28.12.15
✎
15:27
|
вы можете пожалуйста не острить, а хотяб подкинуть пример кода
|
|||
9
Serg_1960
28.12.15
✎
15:28
|
ТС, конфигурацию озвучь. Если ЗУП - там типовых функций куча для этого дела.
|
|||
10
mTema32
28.12.15
✎
15:28
|
Чего, до среды не дотянем? :-)
|
|||
11
ДаЛадно
28.12.15
✎
15:28
|
Срезать справа количество символов равное длине третьего слова
|
|||
12
Mikeware
28.12.15
✎
15:29
|
(9) шо "конфигурацию"...
язык хотя бы... |
|||
13
ДаЛадно
28.12.15
✎
15:29
|
(12) Русский вестимо
|
|||
14
mTema32
28.12.15
✎
15:30
|
(0) Млин какие же ленивые бывают люди...
// Функция "расщепляет" строку на подстроки, используя заданный // разделитель. Разделитель может иметь любую длину. // Если в качестве разделителя задан пробел, рядом стоящие пробелы // считаются одним разделителем, а ведущие и хвостовые пробелы параметра Стр // игнорируются. // Например, // РазложитьСтрокуВМассивПодстрок(",ку,,,му", ",") возвратит массив значений из пяти элементов, // три из которых - пустые строки, а // РазложитьСтрокуВМассивПодстрок(" ку му", " ") возвратит массив значений из двух элементов // // Параметры: // Стр - строка, которую необходимо разложить на подстроки. // Параметр передается по значению. // Разделитель - строка-разделитель, по умолчанию - запятая. // // // Возвращаемое значение: // массив значений, элементы которого - подстроки // Функция РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Экспорт МассивСтрок = Новый Массив(); Если Разделитель = " " Тогда Стр = СокрЛП(Стр); Пока 1=1 Цикл Поз = Найти(Стр,Разделитель); Если Поз=0 Тогда МассивСтрок.Добавить(Стр); Возврат МассивСтрок; КонецЕсли; МассивСтрок.Добавить(Лев(Стр,Поз-1)); Стр = СокрЛ(Сред(Стр,Поз)); КонецЦикла; Иначе ДлинаРазделителя = СтрДлина(Разделитель); Пока 1=1 Цикл Поз = Найти(Стр,Разделитель); Если Поз=0 Тогда МассивСтрок.Добавить(Стр); Возврат МассивСтрок; КонецЕсли; МассивСтрок.Добавить(Лев(Стр,Поз-1)); Стр = Сред(Стр,Поз+ДлинаРазделителя); КонецЦикла; КонецЕсли; КонецФункции // глРазложить И не благодари. |
|||
15
Alex S D
28.12.15
✎
15:30
|
поиск по конфе по слову "инициалы"
|
|||
16
Vladal
28.12.15
✎
15:30
|
(11) Чтобы отрезать что-то ненужное, надо сначала найти это ненужное (Почти по Простоквашино).
(0) В типовых есть функция РазложитьСтрокуВМассивПодстрок(Знач Стр, Разделитель = ",") Передавай туда свою исходную строку, вторым параметром передавай пробел (или чем там слова разделены) и получай массив из слов. |
|||
17
Alex S D
28.12.15
✎
15:31
|
(14) да за что тут благодарить. сейчас он в конец запутается
|
|||
18
Vladal
28.12.15
✎
15:31
|
(14) Может и не ленивые, а не работали с типовыми или не в курсе?
|
|||
19
Mikeware
28.12.15
✎
15:32
|
(13) в смысле, русский - 1С? :-))
ту тогда 7.7 или 8.* ? а то можно на десятке других языков... зы. а регулярные выражения - можно считать языком? |
|||
20
mTema32
28.12.15
✎
15:33
|
(17) Ну чем смог, как говориться. Если не разберется - то не судьба.
|
|||
21
Serg_1960
28.12.15
✎
15:47
|
Самый примитивный пример :)
ТриСловаЧерезПробел = "Всего три слова"; ВсеСлова = СтрЗаменить(ТриСловаЧерезПробел," ",Символы.ПС); ДваПервыхСлова = СтрПолучитьСтроку(ВсеСлова,1) + " " + СтрПолучитьСтроку(ВсеСлова,2); |
|||
22
salvator
28.12.15
✎
15:49
|
(21) Оно подойдет для строки из 2+ слов.
|
|||
23
ktu78
28.12.15
✎
15:49
|
Ввобщем так ловите господа 4 строчки волшебного текста:
Многострочный = СтрЗаменить(НачСтрока, " ", Символы.ПС ) ; Фамилия = СтрПолучитьСтроку(Многострочный, 1); Имя = СтрПолучитьСтроку(Многострочный, 2); КонСтрока = Фамилия + " " +Имя; |
|||
24
salvator
28.12.15
✎
15:50
|
+(22) Если, конечно, они записаны через одиночный пробел.
|
|||
25
aka AMIGO
28.12.15
✎
15:51
|
(23) и чем твой код волшебнее (21) ?
|
|||
26
Mikeware
28.12.15
✎
15:52
|
(25) на две строки больше...
|
|||
27
Лефмихалыч
28.12.15
✎
16:04
|
(0) Чен Ю Сю Игорь Петрович смотрит на тебя снихсодительно, как бы говоря: "Ну, давай"
|
|||
28
Лефмихалыч
28.12.15
✎
16:05
|
А вот Задолбеков Абдунаим Рахмет Оглы думает, что, в общем-то, может в ряде случаев и получиться, но результат будет непонятный
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |