Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/29: Рейтинг темы: голосов - 29, средняя оценка - 4.97
0 / 0 / 0
Регистрация: 19.03.2014
Сообщений: 9

Удалить из строки все до первого пробела, включая сам пробел

16.07.2018, 13:20. Показов 6181. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется введенная строка "58 3" из неё нужно удалить все, чтобы осталось только число "3". Как это реализовать?
Помогите, пожалуйста
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.07.2018, 13:20
Ответы с готовыми решениями:

Удалить все элементы файла, расположенные после последнего символа пробела, включая сам пробел
Дан символьный файл содержащий хотя бы один пробел.Удалить все его элементы расположенные после последнего символа пробела включая сам...

Удалить все элементы файла, расположенные перед первым символом пробела, включая и сам этот пробел
Дан символьный файл, содержащий по крайней мере один символ пробела. Удалить все его элементы, расположенные перед первым символом пробела,...

Удалить из файла все его элементы, расположенные после первого символа пробела, включая и этот пробел
Дан символьный файл, содержащий по крайней мере один символ пробела. Удалить все его элементы, расположенные после первого символа пробела,...

19
 Аватар для Nishen
1358 / 856 / 366
Регистрация: 26.02.2015
Сообщений: 3,814
16.07.2018, 13:30
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// Example program
#include <iostream>
#include <string>
 
int main() {
    
    std::string str = "58 3";
    std::string subStr;
    
    subStr = str.substr(str.find_last_of(' '));
    
    std::cout << subStr << std::endl;    
    
    return 0;
  
}
1
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
16.07.2018, 13:44
Nishen, извините, вы,наверное,опечатались немного
Цитата Сообщение от Nishen Посмотреть сообщение
subStr = str.substr(str.find_last_of(' '))
вроде надо
C++
1
str.find_last_of(' ') + 1
,чтобы пробел тоже удалило.
1
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
16.07.2018, 15:13
Цитата Сообщение от Nishen Посмотреть сообщение
find_last_of(' ')
эта функция ищет последний пробел, а по условию удалить до первого

WizzyEgo,
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
#include <string>
using namespace std;
 
int main()
{    
    string s;
    cout <<"String:\n";
    getline(cin, s);
    s.erase(0, s.find(' ')+1);    
    cout <<s<<endl;    
system("pause");
return 0;
}
1
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
16.07.2018, 20:42
Yetty, а по условию строка - "58 3",где,как ты заметил,один пробел,так что это ничего не меняет
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
16.07.2018, 21:50
LegionK, "58 3" - это просто один из примеров, код для условия:
Цитата Сообщение от WizzyEgo Посмотреть сообщение
Удалить из строки все до первого пробела, включая сам пробел
WizzyEgo, напишите оригинал условия задачи
0
848 / 651 / 323
Регистрация: 24.02.2017
Сообщений: 2,297
17.07.2018, 08:57
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
 
int main()
{
  string s,t;
  size_t i=0;
 
  cout <<"String:\n";
  getline(cin, s);
  while(s[i]!=' ')
      i++;
  i++;
  while(s[i]!='\0')
      t+=s[i++];
  s=t;
  cout<<s;
  system("pause");
  return 0;
}
1
 Аватар для Nishen
1358 / 856 / 366
Регистрация: 26.02.2015
Сообщений: 3,814
17.07.2018, 13:07
Цитата Сообщение от Yetty Посмотреть сообщение
эта функция ищет последний пробел, а по условию удалить до первого
Я сделал все по условию задачи.
0
7438 / 5030 / 2892
Регистрация: 18.12.2017
Сообщений: 15,692
17.07.2018, 14:25
Цитата Сообщение от Nishen Посмотреть сообщение
Я сделал все по условию задачи.
даже если считать условием задачи
Цитата Сообщение от WizzyEgo Посмотреть сообщение
Имеется введенная строка "58 3" из неё нужно удалить все, чтобы осталось только число "3".
что скорее всего не условие, а просто один из примеров ввода, где например в нём говорится о создании новой строки ?

WizzyEgo, Вы сформировали два условия задачи (одно в названии темы, другое в самом сообщении). Вам что сложно сбросить оригинал условия задачи ?
0
 Аватар для Nishen
1358 / 856 / 366
Регистрация: 26.02.2015
Сообщений: 3,814
17.07.2018, 14:27
Цитата Сообщение от Yetty Посмотреть сообщение
что скорее всего не условие, а просто один из примеров ввода, где например в нём говорится о создании новой строки ?
Найди работу, чтобы не задавать глупых вопросов на форумах.
0
17.07.2018, 14:59

Не по теме:

когда по существу ответить нечего - легче всего сказать что за глупый вопрос ? особенно если очень не хочется признать очевидное. :)

0
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
17.07.2018, 15:15
Yetty, но он прав,что ему признавать-то? Есть условие : дана строка "58 3" и все действия нужно проводить над ней. Ты же пытаешься что-то предугадать,предположить и т.д
0
354 / 135 / 28
Регистрация: 16.12.2012
Сообщений: 607
Записей в блоге: 1
17.07.2018, 15:19
Цитата Сообщение от LegionK Посмотреть сообщение
Yetty, но он прав,что ему признавать-то?
Где он прав?
Цитата Сообщение от LegionK Посмотреть сообщение
Ты же пытаешься что-то предугадать,предположить и т.д
Да?

Давай-ка глянем в название темы
Удалить из строки все до первого пробела, включая сам пробел
О МОЙ БОГ.
НЕОЖИДАННО-ТО КАК
Цитата Сообщение от Nishen Посмотреть сообщение
Найди работу, чтобы не задавать глупых вопросов на форумах.
Найди в себе зачатки адекватности

А еще забавно это слышать от 26-летнего человека с такой подписью
Ищу наставника, либо человека для совместного изучения/разработок на языке C++.
0
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
17.07.2018, 15:35
Ромаха, очень интересная история, послушал с удовольствием.Спасибо.
Хорошо, мы посмотрели на название темы, было увлекательно, благодарю. Да, в теме написано "до 1 пробела". И правда, кто спорит-то?
Теперь посмотрим само сообщение от ОПа :
Цитата Сообщение от WizzyEgo Посмотреть сообщение
Имеется введенная строка "58 3" из неё нужно удалить все, чтобы осталось только число "3"
Теперь давайте попробуем подумать немного. Подумали? Хорошо. Скорее всего, многоуважаемый Роман не догадался, что название темы может служить для того, чтобы завладеть вниманием людей и кратко изложить суть проблемы, основной же смысл может быть заложен в основном сообщении.
Теперь проверим это утверждение -
Цитата Сообщение от WizzyEgo Посмотреть сообщение
Имеется введенная строка "58 3" из неё нужно удалить все, чтобы осталось только число "3". Как это реализовать?
Теперь ещё немного подумаем и напряжем свои извилины. Все, хватит. Итак, Роман, после всех раздумий вы наверняка рассмотрели вариант,что основной смысл темы - "как из строки "58 3" сделать строку "3"" - мог ускользнуть от вас.
Это лишь скромное предположение, которое ,на мой, конечно же, скромный взгляд, имеет место быть.
Вам бы научиться рассматривать чужие мнения - сразу легче жить станет, поверьте
0
354 / 135 / 28
Регистрация: 16.12.2012
Сообщений: 607
Записей в блоге: 1
17.07.2018, 16:07
Пф.
Понеслась, че
Цитата Сообщение от LegionK Посмотреть сообщение
многоуважаемый Роман
Попрошу - "Очень многоуважаемый"
Цитата Сообщение от LegionK Посмотреть сообщение
кратко изложить суть проблемы
Кратко и изложили.
Только вот ТС, как <мне лень копировать твой ник> мог бы догадаться, не такой словоблуд, как <лень>, поэтому не стал повторять то, что уже итак написано. Классно, да?
Но еще более кошерен другой момент.
Мне насрать. И всем насрать. Вот всецело все равно. Вот максимально.
Поэтому я читаю название темы. И вижу пример, который дает ТС, для проверки работоспособности программы.
Но тут находятся умники, которые пишут программку (видал. уничижительно. делаю акцент на халявности), где некоторые умники умудряются допустить ошибку, а после того, как им лаского и нежно указывают на эту самую ошибку, начинают внезапно и спонтанно хамить. Нравится? Мне тоже. Проверяй.
Цитата Сообщение от LegionK Посмотреть сообщение
что основной смысл темы - "как из строки "58 3" сделать строку "3""
Это основной смысл?
Литературы прогуливал?
В честь чего?
Еще раз.
Есть задача. Удалить все до первого пробела. Есть пример.
Допустим. Допустим, что ТС болен (и Вы (и Ваш товарисчъ (мне снова лень)).
Только вот то решение, о котором говорит (лень) и то, которое хочу видеть я - оно решает обе задачи. Ваше - только одну.
Т.е. между универсальностью. И полной правильностью - вы выбираете убогое говно.
Нравится? Наслаждайся, только пора вылезти из-под одеялка и признать себя говноедом.
А дальше - упивайся - никто слово не скажет.
Но не смей наезжать на людей, которые пытаются объяснить тебе (еще не признавшему свою истинную натуру), что ты действуешь не совсем верно.

Цитата Сообщение от LegionK Посмотреть сообщение
Вам бы научиться рассматривать чужие мнения - сразу легче жить станет, поверьте
Я рассматриваю. Но разве я виноват в том, что они идиотские?

Добавлено через 2 минуты
P.S.
Цитата Сообщение от LegionK Посмотреть сообщение
не догадался
Цитата Сообщение от LegionK Посмотреть сообщение
Ты же пытаешься что-то предугадать,предположить и т.д
Классно, да?
0
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
17.07.2018, 16:41
Ромаха,
Цель моих сообщений я написал вам уже во вконтакте. Повторюсь, я полностью согласен с
Цитата Сообщение от Yetty Посмотреть сообщение
WizzyEgo, Вы сформировали два условия задачи (одно в названии темы, другое в самом сообщении). Вам что сложно сбросить оригинал условия задачи ?
и именно это и пытался донести до вас. Первое мнение - нужно делать по самой теме, второе - по сообщению. Автор,как вы заметили, не указал, что именно ему интересно.
Если вам будет угодно, на сегодня закончим, ибо я не вижу смысла в дальнейшей перепалке. Все свои мысли по этому поводу я написал в моем предыдущем посте. Большинство абзацев оттуда будут являться контраргументами ( или как минимум ответами) на ваши сообщения выше.

А про ваше P.S :
можно описать одним :
Цитата Сообщение от Ромаха Посмотреть сообщение
Литературы прогуливал?
,что контексты улавливать не научился. Или,как минимум, не научился определять на что я именно отвечаю
0
354 / 135 / 28
Регистрация: 16.12.2012
Сообщений: 607
Записей в блоге: 1
17.07.2018, 16:47
Цитата Сообщение от LegionK Посмотреть сообщение
контраргументами
Пфф
Цитата Сообщение от LegionK Посмотреть сообщение
что контексты улавливать не научился
Ооо. Интересно. В смысле бред и ересь. Позорная ересь причем.
По твоим правилам - нельзя гадать, что предположил автор в плане задачи.
Но можно гадать хотел ли автор кликбейт.

Гениально.
Кручу-верчу-запутать хочу..
0
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
17.07.2018, 17:02
Ромаха, Здравствуйте!Большое Вам спасибо за Ответ!
Дайте угадаю - вы дурачек? Я правильно угадал? Да? Спасибо,не надо почестей,что вы, это просто дар провидения мне помог.
Давайте я все-таки возьму на себя обязанности учителя и объясню вам с примерами :

Цитата Сообщение от Ромаха Посмотреть сообщение
не догадался
относится к
Цитата Сообщение от LegionK Посмотреть сообщение
что название темы может служить для того, чтобы завладеть вниманием людей и кратко изложить суть проблемы, основной же смысл может быть заложен в основном сообщении.

Цитата Сообщение от Ромаха Посмотреть сообщение
Ты же пытаешься что-то предугадать,предположить и т.д
относится к
Цитата Сообщение от LegionK Посмотреть сообщение
Есть условие : дана строка "58 3" и все действия нужно проводить над ней
Давайте вы сами сначала подумаете. Если все же не поймете - не беда, многие люди в возрасте 20+ годиков не могут отличить одно от другого.Но я попробую вам помочь.


Цитата Сообщение от Ромаха Посмотреть сообщение
Т.е. между универсальностью. И полной правильностью - вы выбираете убогое говно.
Нравится? Наслаждайся, только пора вылезти из-под одеялка и признать себя говноедом.
А дальше - упивайся - никто слово не скажет.
Но не смей наезжать на людей, которые пытаются объяснить тебе (еще не признавшему свою истинную натуру), что ты действуешь не совсем верно.
Хо-Хо, какой ты у нас злой,дяденька. Обзывается ещё так знатно.
0
354 / 135 / 28
Регистрация: 16.12.2012
Сообщений: 607
Записей в блоге: 1
17.07.2018, 17:09
Цитата Сообщение от LegionK Посмотреть сообщение
Давайте я все-таки возьму на себя обязанности учителя и объясню вам с примерами :
Подожди-ка, великий сенсей, объясни-ка еще тогда это неверное.
Цитата Сообщение от Ромаха Посмотреть сообщение
Ооо. Интересно. В смысле бред и ересь. Позорная ересь причем.
По твоим правилам - нельзя гадать, что предположил автор в плане задачи.
Но можно гадать хотел ли автор кликбейт.
Ах верно?
Тогда зачем была вся твоя клоунада?
Чтобы не признавать, что у тебя "аж трисет", от того, что ты везде не прав?
Что в каждой теме тебя носом суют, что ты что-то делаешь неправильно?
Дак может ты задумаешься и начнешь что-то менять, а не доказывать 20+летним дядечкам, что среди 15летних мальчиков бывают вундеркинды, которые умеют решать решать задачу "удалить все до первого пробела" (причем, не умеют)
0
 Аватар для LegionK
393 / 263 / 193
Регистрация: 02.05.2017
Сообщений: 1,003
17.07.2018, 17:44
Ромаха, хорошо,дяденька, попробую на пальцах,раз у вас проблемы с примерами.
Итак,первое сообщение
Цитата Сообщение от LegionK Посмотреть сообщение
что название темы может служить для того, чтобы завладеть вниманием людей и кратко изложить суть проблемы, основной же смысл может быть заложен в основном сообщении.
Смысол : ты создаешь тему "Алгоритм Прима", само название кратко описывает суть проблемы автора и привлекает внимание человека,который,например,вчера изучил этот алгоритм заходит в тему. В самой теме он должен увидеть само задание,которое не может решить автор.
Если рассматривать то,что я написал выше и ваше
Цитата Сообщение от Ромаха Посмотреть сообщение
Но можно гадать хотел ли автор кликбейт.
то я не понимаю связки.совсем. Я написал о том, что тема должна просто содержать краткое описание проблемы,но основное описание должно быть в сообщении : подставляем сюда ,получаем что автору изначально надо было распарсить строку "58 3" в "3",он нормально создал название темы "удалить из строки все до первого пробела",которое адекватно отражает суть его проблемы,описаной в сообщении,все окей.(это была такая теория от меня в том сообщении,если ты нормально читать умеешь,дядюшка,теория о том, что нужно распарсить строку именно "58 3",а не какую-либо другую). Вы же говорите про какого-то автора обманщика,если я правильно понял
Цитата Сообщение от Ромаха Посмотреть сообщение
кликбейт
,который неправильно создал название темы. "Чаво?"

Теперь переносимся ко второму изречению *тоже сам ищи* которое я ответил Yetty.
Смотрим мою первую теорию "название темы - сокращение от основной проблемы ( таким образом нужны строка именно "58 3") ". Есть прогресс? Понял суть? Молодчина.
Цитата Сообщение от Ромаха Посмотреть сообщение
По твоим правилам - нельзя гадать, что предположил автор в плане задачи
- теория на то и теория, что их много. Я же не однозначно говорил,что нужна именно строка "58 3".
Вроде разобрались.

Цитата Сообщение от Ромаха Посмотреть сообщение
Тогда зачем была вся твоя клоунада?
- мне было скучно и я не думал, что затянется так на долго.
Цитата Сообщение от Ромаха Посмотреть сообщение
Чтобы не признавать, что у тебя "аж трисет", от того, что ты везде не прав?
- ладно,ладно,не прав так не прав, хватит уже на сегодня. Дети устали,привозите новых
Цитата Сообщение от Ромаха Посмотреть сообщение
Что в каждой теме тебя носом суют, что ты что-то делаешь неправильно?
- где дяденька? ГДЕ?
Цитата Сообщение от Ромаха Посмотреть сообщение
которые умеют решать решать задачу "удалить все до первого пробела" (причем, не умеют)
- где ты увидел мое решение? ГДЕ? Где ты увидел хотя бы то, что я оспариваю чужое на правильность? Я ПРЕДЛАГАЮ, что оно может быть не единственно верным,алло. https://www.cyberforum.ru/post12545669.html

А вообще ладно,харе. Вы правы - я нет. Как минимум до завтра

Добавлено через 4 минуты

Не по теме:


Что за бред я написал :D
Ладно. И так сойдет

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
17.07.2018, 17:44
Помогаю со студенческими работами здесь

Удалить все его элементы, расположенные перед последним символом пробела включая и этот пробел
Дан символьный файл, содержащий по крайней мере один символ пробела. Удалить все его элементы, расположенные перед последним символом...

Удалить из текстового файла все его элементы, расположенные после последнего символа пробела, включая и этот пробел.
Дано текстовый файл, содержащий по крайней мере один символ пробела. Удалить все его элементы, расположенные после последнего символа...

Как удалить до знака * все включая сам знак?
$otv = &quot;5*120&quot;; $otv = preg_replace(&quot;/\*.*/&quot;, &quot;&quot;, $otv); echo $otv; //выводит 5 В рег. выражениях ничего не понимаю. Поэтому...

Удалить все элементы файла, расположенные перед последним пробелом, включая пробел
Дано текстовый файл, содержащий по крайней мере один символ пробела. Удалить все его элементы, расположенные перед последним символом...

Как удалить всё после первого пробела?
дана строка: string s = &quot;дом дерево деревня&quot;; как мне вывести только дом? ну, т.е. удалить всё, что идёт после первого пробела


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru