C++ 对string字符串“1:2:41,1:3:5”怎么解析出1 2 41和1 3 5
时间: 2023-06-01 13:07:02 浏览: 123
可以使用字符串分割函数来解析字符串,具体步骤如下:
1. 使用":"作为分隔符将字符串分割成一个列表,例如["1", "2", "41", "1", "3", "5"];
2. 将列表中的每一个元素转化为整型,例如[1, 2, 41, 1, 3, 5];
3. 将列表中的元素按照每三个一组分成子列表,例如[[1, 2, 41], [1, 3, 5]];
4. 取出每个子列表的第一个元素,组成一个新的列表,例如[1, 1];
5. 取出每个子列表的第二个元素,组成一个新的列表,例如[2, 3];
6. 取出每个子列表的第三个元素,组成一个新的列表,例如[41, 5]。
下面是示例代码:
```
s = "1:2:41,1:3:5"
lst = s.split(",") # ['1:2:41', '1:3:5']
lst = [list(map(int, x.split(":"))) for x in lst] # [[1, 2, 41], [1, 3, 5]]
col1 = [x[0] for x in lst] # [1, 1]
col2 = [x[1] for x in lst] # [2, 3]
col3 = [x[2] for x in lst] # [41, 5]
print(col1, col2, col3) # [1, 1] [2, 3] [41, 5]
```
阅读全文