如何修正为字符串列表元素添加末尾#时出现双反斜杠的代码?
嘿,这个问题很好解决!你其实是用错工具啦~
问题原因
Path.Combine是专门用来拼接文件系统路径的方法,它会根据当前操作系统自动插入路径分隔符(Windows下是\)。当你把#和目标字符串传进去时,它会把#当成路径里的一个“目录”节点,自动给你加上分隔符,最终就出现了#\\Houseplant(这里的双反斜杠是字符串在调试时的转义显示,实际存储的是单个\,但这显然不是你想要的效果)。
修正方案
既然你的需求只是给字符串添加开头的#,直接用普通的字符串操作就行,完全不需要路径处理工具:
方案1:字符串插值(最简洁,C# 6及以上版本支持)
tmpList = tmpList.Select(hashtag => $"#{hashtag}").ToList();
方案2:使用string.Concat
tmpList = tmpList.Select(hashtag => string.Concat("#", hashtag)).ToList();
方案3:直接用加号拼接
tmpList = tmpList.Select(hashtag => "#" + hashtag).ToList();
这几种方法都能精准得到你想要的#Houseplant结果,不会引入多余的路径分隔符。
内容的提问来源于stack exchange,提问作者LStrike
相关产品推荐
相关产品推荐

