例如,我有一个字符串,由“sample.zip”组成。如何使用字符串包或其他方式删除“.zip”扩展名?
编辑:Go 继续前进。请参阅:
尝试:
basename := "hello.blah" name := strings.TrimSuffix(basename, filepath.Ext(basename))
TrimSuffix 基本上告诉它去掉尾随的字符串,这是带点的扩展名。
使用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 上运行。
filepath.Ext