在刷leetcode 过程中,C++一直没有比较好的方法来分割字符串,尤其对于带有很明显的分隔符比如.,\
,等
我一般的做法都是用两个下标来标识一段子字符串,然后substr()
来做进一步处理。
最近学习了用stringstream
来处理字符串,类似iosteam,fsteam
,使得操作string
就像操作输入流一样。
71. 简化路径
思路
对于文件路径有很明显的分隔符/
,类似的对于IP地址分隔符.
- 用输入字符串来初始化
stringstream
对象 - while循环提取子字符串,根据情况判断
1 | string simplifyPath(string path) { |
下面的snippet code 用来处理类似"dog cat mouse ..."
字符串
1 | stringstream raw(str); |