例如,我有一个字符串,由“ sample.zip”组成。如何使用字符串包或其他字符串删除“ .zip”扩展名?
3 回答
人到中年有点甜
TA贡献1895条经验 获得超7个赞
使用path / filepath.Ext来获取扩展名。然后,您可以使用扩展名的长度来检索减去扩展名的子字符串。
var filename = "hello.blah"
var extension = filepath.Ext(filename)
var name = filename[0:len(filename)-len(extension)]
或者,您可以使用strings.LastIndex来查找最后一个句点(。),但这可能会更脆弱,因为在某些情况下(例如,没有扩展名)会filepath.Ext处理您可能需要显式编码的代码,或者如果Go是可以在使用扩展定界符而不是句点的理论O / S上运行。
繁华开满天机
TA贡献1816条经验 获得超4个赞
尝试:
basename := "hello.blah" name := strings.TrimSuffix(basename, filepath.Ext(basename))
TrimSuffix基本上告诉它除去尾随的字符串,该字符串是带有点的扩展名。
守候你守候我
TA贡献1802条经验 获得超10个赞
这种方式也适用:
var filename = "hello.blah"
var extension = filepath.Ext(filename)
var name = TrimRight(filename, extension)
但是也许Paul Ruane的方法更有效?
- 3 回答
- 0 关注
- 205 浏览
添加回答
举报
0/150
提交
取消