如何在C ++中删除特定单词之前的字符串中的所有内容?

cma0014

查看最终更新以寻求解决方案

这是为了学校,所以我要求提示,如果可能的话,不要公开的答案。

我需要使用短语“我的名字,当前社区学院”并输出“当前社区学院”,我已经有了一个循环来利用当前社区学院的资本。

至此,我基本上可以掌握以下内容:

    #include "stdafx.h"
    #include <iostream>
    #include <sstream>
    #include <string>

    using namespace std;

    int main()
    {
        string phrase = "My Name current community college";

        cout << phrase << endl << endl;

        for (int i = 0; i < phrase.length(); i++)
        {
            if (phrase[i] == ' ')
            {
                phrase[i + 1] = toupper(phrase[i + 1]);
            }
        }
    return 0;
    }

我已经尝试过使用str.find和str.erase,但是它们似乎受到限制,因为它们只能搜索单个字符。有没有一种方法可以搜索“当前”(这是我的社区学院的名称)并仅删除字符串中该单词出现之前的所有内容?

更新:感谢Sam我是我能够完成我的任务,这是我现在拥有的:

#include "stdafx.h"
#include <iostream>
#include <sstream>
#include <string>

using namespace std;

int main()
{
    string phrase = "My Name current community college";

    cout << phrase << endl << endl;

    for (int i = 0; i < phrase.length(); i++)
    {
        if (phrase[i] == ' ')
        {
            phrase[i + 1] = toupper(phrase[i + 1]);
        }
    }

    size_t pos = phrase.find("Current");
    string output = phrase.substr(pos);

    cout << output << endl << endl;
    system("PAUSE");
    return 0;

}

但是我很着迷,仅仅获得A并不能实现我的目标。是否有一种无需创建新字符串即可完成此任务的方法,例如,保留我的单个字符串,但删除“当前”之前的所有内容。

最后更新

我知道了,我什至根本不需要子字符串。您可以使用str.find()结合使用str.erase()来擦除所有内容,直到使用size_t pos

#include "stdafx.h"
#include <iostream>
#include <sstream>
#include <string>

using namespace std;

int main()
{
    string phrase = "My Name current community college";

    cout << phrase << endl << endl;

    for (int i = 0; i < phrase.length(); i++)
    {
        if (phrase[i] == ' ')
        {
            phrase[i + 1] = toupper(phrase[i + 1]);
        }
    }

    size_t pos = phrase.find("Current"); //find location of word
    phrase.erase(0,pos); //delete everything prior to location found

    cout << phrase << endl << endl;
    system("PAUSE");
    return 0;

}

您也可以更换

size_t pos = phrase.find("Current");
phrase.erase(0,pos);

与公正phrase = phrase.substr(phrase.find("Current"));,这也适用。

山姆,我是说恢复莫妮卡

您可以使用find查找要开始的索引,也可以使用substr选择要返回的部分。

size_t position = str.find("Current");   

string newString = phrase.substr(position);     // get from position to the end

http://www.cplusplus.com/reference/string/string/substr/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在整个列中保留字符串中的特定单词并删除所有其余单词?

来自分类Dev

如何使用R删除字符串中特定单词之前和之后的单词?

来自分类Dev

如果特定单词存在于字符串中的单词之前,如何删除它们

来自分类Dev

C ++删除文本文件中位于特定单词之前/之后的所有内容

来自分类Dev

如果字符串中有特定单词,如何从列表中删除字符串

来自分类Dev

如何在bash中的特定单词之前打印字符串?

来自分类Dev

如何在shell中的特定单词之前打印字符串?

来自分类Dev

如何在Notepad ++中删除方括号或特定单词及其以外的所有内容?

来自分类Dev

如何在Python中删除从字符串到特定字符的所有内容

来自分类Dev

如何从特定字符之前的字符串中删除所有字符

来自分类Dev

如何从mysql中的字符串中删除特定单词?

来自分类Dev

如何从mysql中的字符串中删除特定单词?

来自分类Dev

如何从 CSV(在 Python 中)的字符串中删除特定单词?

来自分类Dev

如何快速替换字符串中的特定单词?

来自分类Dev

我如何从字符串中获取特定单词?

来自分类Dev

如何快速替换字符串中的特定单词?

来自分类Dev

如何通过迭代从字符串中删除所有出现的某些指定单词来最小化字符串的长度

来自分类Dev

如何在mongodb中获取与给定单词匹配的所有子字符串及其计数?

来自分类Dev

C#RegEx查找特定字符串或字符串中的所有单词

来自分类Dev

如何在javascript中删除一个单词后的所有字符串?

来自分类Dev

如何在javascript中删除一个单词后的所有字符串?

来自分类Dev

如何在PHP中的特定单词后替换所有内容

来自分类Dev

如何从字符串开头删除特定单词?

来自分类Dev

如何在字符串中的特定单词之后选择Oracle SQL中的子字符串?

来自分类Dev

如何从C#中包含特定单词的字符串中获取文本?

来自分类Dev

如何在Java中的特定单词后获取子字符串

来自分类Dev

如何在正则表达式中给定单词的第一次匹配之前删除所有内容?

来自分类Dev

MS Access:如何删除两个特定字符后的字符串中的所有内容

来自分类Dev

MS Access:如何删除两个特定字符后的字符串中的所有内容

Related 相关文章

  1. 1

    如何在整个列中保留字符串中的特定单词并删除所有其余单词?

  2. 2

    如何使用R删除字符串中特定单词之前和之后的单词?

  3. 3

    如果特定单词存在于字符串中的单词之前,如何删除它们

  4. 4

    C ++删除文本文件中位于特定单词之前/之后的所有内容

  5. 5

    如果字符串中有特定单词,如何从列表中删除字符串

  6. 6

    如何在bash中的特定单词之前打印字符串?

  7. 7

    如何在shell中的特定单词之前打印字符串?

  8. 8

    如何在Notepad ++中删除方括号或特定单词及其以外的所有内容?

  9. 9

    如何在Python中删除从字符串到特定字符的所有内容

  10. 10

    如何从特定字符之前的字符串中删除所有字符

  11. 11

    如何从mysql中的字符串中删除特定单词?

  12. 12

    如何从mysql中的字符串中删除特定单词?

  13. 13

    如何从 CSV(在 Python 中)的字符串中删除特定单词?

  14. 14

    如何快速替换字符串中的特定单词?

  15. 15

    我如何从字符串中获取特定单词?

  16. 16

    如何快速替换字符串中的特定单词?

  17. 17

    如何通过迭代从字符串中删除所有出现的某些指定单词来最小化字符串的长度

  18. 18

    如何在mongodb中获取与给定单词匹配的所有子字符串及其计数?

  19. 19

    C#RegEx查找特定字符串或字符串中的所有单词

  20. 20

    如何在javascript中删除一个单词后的所有字符串?

  21. 21

    如何在javascript中删除一个单词后的所有字符串?

  22. 22

    如何在PHP中的特定单词后替换所有内容

  23. 23

    如何从字符串开头删除特定单词?

  24. 24

    如何在字符串中的特定单词之后选择Oracle SQL中的子字符串?

  25. 25

    如何从C#中包含特定单词的字符串中获取文本?

  26. 26

    如何在Java中的特定单词后获取子字符串

  27. 27

    如何在正则表达式中给定单词的第一次匹配之前删除所有内容?

  28. 28

    MS Access:如何删除两个特定字符后的字符串中的所有内容

  29. 29

    MS Access:如何删除两个特定字符后的字符串中的所有内容

热门标签

归档