c++中處理字符串的空格和包含關係

最近刷題遇到很多關於字符串的問題 因爲剛用c++刷題不久
然後遇到了一些困難
之後看了大佬的代碼瞭解了兩種處理的方法
在這裏分別介紹一下

1.有空格的字符串分開存放在數組中

這個用代碼去掃一遍字符串然後判斷空格也很簡單
但是還有更簡單的方法
在c#中有一個split的方法可以直接分開
在c++中我們可以用istringstream來實現

int main()
{
    string a = "sdfsa sdfdaf dsferw dfghth";
    istringstream word(a);
    string t;
    vector<string> later;
    while (word >> t) {//轉換類型之後填入vecotr中
        later.push_back(t);
    }
    for (auto h : later) {
        cout << h << " " ;
    }
    return 0;
}

在這裏插入圖片描述
輸出結果就是分開的字符串

2.判斷字符串之間是否具有包含關係

這個用一個方法很簡單可以判斷

vector<string> later;
    for (int i = 0;i < words.size();i++)
    {
        for (int j = 0;i < words.size();j++) {
            if (i == j) {
                continue;
            }
            if (words[j].find(words[i]) != string::npos) {
                later.push_back(words[i]);
                break;
            }
        }
    }
    return later;

這篇博客介紹的兩個方法很大程度是我自己避免忘記然後寫下的
如果對大家有用的話 那樣最好
如果你也愛好遊戲開發 歡迎關注我

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章