题解 | #参数解析#

参数解析

http://www.nowcoder.com/practice/668603dc307e4ef4bb07bcd0615ea677

#include <bits/stdc++.h>

using namespace::std;

int main() {

string str;

while (getline(cin, str)) {
    vector<string> vec;
    int j = 0; //记录起始索引
    for (int i = 0; i < str.size(); i++) {
        if (' ' == str[i]) {
            if (i != j) { //避免空串
                vec.push_back(str.substr(j, i - j));
            }
            j = i + 1;
        } else if ('"' == str[i]) {
            j = i + 1;
            i++;
            while (str[i] != '"') {
                i++;
            }
            if (i != j) {
                vec.push_back(str.substr(j, i - j));
            }
            j = i + 1;
        }
    }
    if (j < str.size()) { // 最后如果还剩一串字符
        vec.push_back(str.substr(j, str.size() - j));
    }
    cout << vec.size() << endl;
    for (auto const &v : vec) {
        cout << v << endl;
    }
}

return 0;

}

全部评论

相关推荐

点赞 评论 收藏
分享
03-01 21:45
中北大学 Python
孤蓝长空:请你说一下为什么你用websocket而不是http,请你说一下什么是rpc,为什么用rpc,你的rpc的传输协议是JSON,xml还是什么 请你描述一下你的鉴权流程(完整的) 我问的是第二个项目,随便问的哈哈哈
开工第一帖
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务