我想使用字符串类,从字符串中提取一些信息。 给定字符串:< 12,Apple>,< 20,Orange>,< 49,iPhone>
我想让12,20,49成为一个int数组。 这意味着[0] = 12,a [1] = 20,a [2] = 49。
让Apple,Orange,iPhone成为String数组。 这意味着b [0] =“Apple”,b [1] =“Orange”b [2] =“iPhone”
我该怎么办?
答案 0 :(得分:1)
假设字符串遵循格式<int,string>,...
。请在下面找到伪代码:
Loop through the string `str` and
{
smaller_sign_pos = str.find('<', prev_pos)
entry_comma_pos = str.find(',', smaller_sign_pos+1)
greater_sign_pos = str.find('>', entry_comma_pos+1)
if (all pos values are not `npos`)
{
int_value = atoi(str.substr(smaller_sign_pos+1, entry_comma_pos-smaller_sign_pos-1))
str_value = str.substr(entry_comma_pos+1, greater_sign_pos-entry_comma_pos-1)
prev_pos = greater_sign_pos+1
append int_value to int array
append str_value to string array
optional: you can check if the comma after '>' exists
}
else
{
break or set the end of loop flag
}
}