回答

收藏

如何使用字符串包或其他方式删除“.zip”扩展名?

技术问答 技术问答 118 人阅读 | 0 人回复 | 2023-09-11

例如,我有一个字符串,由sample.zip组成。如何使用字符串包或其他方法删除.zip”扩展名?0 s3 F$ I# Y: P* l* Y* p/ d
                                                                . ~* I, F/ B7 [* I6 G3 h
    解决方案:                                                               
/ ~) y4 J' H" i9 A8 }) |                                                                编辑:Go 继续前进。请参考:# l) E* p% L4 g  H$ G: H2 R1 T$ N& ~
尝试:
8 t: r, d/ O% f: c! H/ M' e
    basename := "hello.blah"name := strings.TrimSuffix(basename,filepath.Ext(basename))
    ! Q, h1 h6 Z, z; Z
TrimSuffix 基本上告诉它去掉跟随的字符串,这是一个带点的扩展名。3 }( Z) ]/ k0 R) T  m
使用path/filepath.Ext获取扩展名。然后,您可以使用扩展名的长度来检索减去扩展名的子字符串。
# r) H% P* h6 H1 s' L! N% {* K
    var filename = "hello.blah"var extension = filepath.Ext(filename)var name = filename[0:len(filename)-len(extension)]! W* J& B$ Q. N# L: u3 H' V1 C; H) p
或者,你可以用strings.LastIndex找最后一个句点 (.) 但这可能更脆弱,因为会有一些边缘条件(比如没有扩展名)filepath.Ext如果 Go 是使用除句点以外的扩展分隔符的理论 O/S 上运行。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则