猿问

修剪字符串的后缀或扩展名?

例如,我有一个字符串,由“ sample.zip”组成。如何使用字符串包或其他字符串删除“ .zip”扩展名?


慕神8447489
浏览 206回答 3
3回答

人到中年有点甜

使用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上运行。

繁华开满天机

尝试:basename := "hello.blah" name := strings.TrimSuffix(basename, filepath.Ext(basename))TrimSuffix基本上告诉它除去尾随的字符串,该字符串是带有点的扩展名。

守候你守候我

这种方式也适用:var filename = "hello.blah"var extension = filepath.Ext(filename)var name = TrimRight(filename, extension)但是也许Paul Ruane的方法更有效?
随时随地看视频慕课网APP

相关分类

Go
我要回答