2016-01-13 23 views
0

比方说,我的程序需要用户输入和用户决定输入这个: “新的(‘你好’,‘再见’)”如何阅读串内参数

Hi和细则都只是一个例子,我们不知道用户会实际输入什么内容。

我将如何提取这2个字符串(嗨和再见)?我不明白如何做到这一点。我在C++中阅读了更多关于字符串的知识,但我仍然不知道如何去做。

+0

找到(,然后看看是否有一个“之后,再寻找下一个”取决于你真正想做的事 – immibis

+0

你可能会寻找[正则表达式(HTTP:// EN。 – xboi209

+0

@immibis,我已经通过std :: string中的“find”方法做到了这一点,它并没有帮我伤心 –

回答

0

您不会真正从用户输入中获得两个字符串。即使它们将其格式化为

"word" "more words" "blah blah blah" 

...它仍将存储在单个字符串中。无论你想要做什么,你都可能想要单独询问字符串,或者引导用户如何显示分隔符(可能是逗号)。

,作为使多个字符串出你有什么,你总是可以只通过大串读,如果你知道的分隔符(我用的是逗号),并将其分成两个字符串,s1s2,像这样:

input = "color, length"; 
string s1 = ""; 
string s2 = ""; 
for (int i=0; i<input.length(); i++) 
{ 
    if(input[i] == ",") 
    { 
    s1 = input.substr(0, i); 
    s2 = input.substr(i+1); 
    break; 
    } 
}