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

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

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

Имеется введенная строка "58 3" из неё нужно удалить все, чтобы осталось только число "3". Как это реализовать?
Помогите, пожалуйста
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.07.2018, 13:20
Ответы с готовыми решениями:

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

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

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

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

19
897 / 603 / 286
Регистрация: 26.02.2015
Сообщений: 2,750
16.07.2018, 13:30 2
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
280 / 205 / 167
Регистрация: 02.05.2017
Сообщений: 820
16.07.2018, 13:44 3
Nishen, извините, вы,наверное,опечатались немного
Цитата Сообщение от Nishen Посмотреть сообщение
subStr = str.substr(str.find_last_of(' '))
вроде надо
C++
1
str.find_last_of(' ') + 1
,чтобы пробел тоже удалило.
1
4735 / 3222 / 1946
Регистрация: 18.12.2017
Сообщений: 10,265
16.07.2018, 15:13 4
Цитата Сообщение от 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
280 / 205 / 167
Регистрация: 02.05.2017
Сообщений: 820
16.07.2018, 20:42 5
Yetty, а по условию строка - "58 3",где,как ты заметил,один пробел,так что это ничего не меняет
0
4735 / 3222 / 1946
Регистрация: 18.12.2017
Сообщений: 10,265
16.07.2018, 21:50 6
LegionK, "58 3" - это просто один из примеров, код для условия:
Цитата Сообщение от WizzyEgo Посмотреть сообщение
Удалить из строки все до первого пробела, включая сам пробел
WizzyEgo, напишите оригинал условия задачи
0
501 / 377 / 238
Регистрация: 24.02.2017
Сообщений: 1,356
17.07.2018, 08:57 7
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
897 / 603 / 286
Регистрация: 26.02.2015
Сообщений: 2,750
17.07.2018, 13:07 8
Цитата Сообщение от Yetty Посмотреть сообщение
эта функция ищет последний пробел, а по условию удалить до первого
Я сделал все по условию задачи.
0
4735 / 3222 / 1946
Регистрация: 18.12.2017
Сообщений: 10,265
17.07.2018, 14:25 9
Цитата Сообщение от Nishen Посмотреть сообщение
Я сделал все по условию задачи.
даже если считать условием задачи
Цитата Сообщение от WizzyEgo Посмотреть сообщение
Имеется введенная строка "58 3" из неё нужно удалить все, чтобы осталось только число "3".
что скорее всего не условие, а просто один из примеров ввода, где например в нём говорится о создании новой строки ?

WizzyEgo, Вы сформировали два условия задачи (одно в названии темы, другое в самом сообщении). Вам что сложно сбросить оригинал условия задачи ?
0
897 / 603 / 286
Регистрация: 26.02.2015
Сообщений: 2,750
17.07.2018, 14:27 10
Цитата Сообщение от Yetty Посмотреть сообщение
что скорее всего не условие, а просто один из примеров ввода, где например в нём говорится о создании новой строки ?
Найди работу, чтобы не задавать глупых вопросов на форумах.
0
Yetty
17.07.2018, 14:59
  #11

Не по теме:

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

0
280 / 205 / 167
Регистрация: 02.05.2017
Сообщений: 820
17.07.2018, 15:15 12
Yetty, но он прав,что ему признавать-то? Есть условие : дана строка "58 3" и все действия нужно проводить над ней. Ты же пытаешься что-то предугадать,предположить и т.д
0
353 / 134 / 28
Регистрация: 16.12.2012
Сообщений: 607
Записей в блоге: 1
17.07.2018, 15:19 13
Цитата Сообщение от LegionK Посмотреть сообщение
Yetty, но он прав,что ему признавать-то?
Где он прав?
Цитата Сообщение от LegionK Посмотреть сообщение
Ты же пытаешься что-то предугадать,предположить и т.д
Да?

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

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

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

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

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

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

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

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


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

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

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

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

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

Не по теме:


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

0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
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
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.