如何使用字符串包或其他方式删除“.zip”扩展名?
技术问答
326 人阅读
|
0 人回复
|
2023-09-11
|
例如,我有一个字符串,由sample.zip组成。如何使用字符串包或其他方法删除.zip”扩展名?+ j$ y; e$ L. N: k! {
# v, ?) |2 Q/ `5 t# Q 解决方案: ! I6 L5 Z' @/ t# F8 @4 J: _3 A
编辑:Go 继续前进。请参考:$ u9 ]# k# [- @2 @. m8 I% d! g
尝试:
! b) v( p( ?+ ?basename := "hello.blah"name := strings.TrimSuffix(basename,filepath.Ext(basename))
' C* @5 H4 n7 U c9 _2 B9 p$ H% t TrimSuffix 基本上告诉它去掉跟随的字符串,这是一个带点的扩展名。
$ u7 j: G( i7 k! k+ g使用path/filepath.Ext获取扩展名。然后,您可以使用扩展名的长度来检索减去扩展名的子字符串。
# G, q3 f2 g8 m* c- ]var filename = "hello.blah"var extension = filepath.Ext(filename)var name = filename[0:len(filename)-len(extension)]
* s( |9 @3 K* }; Q 或者,你可以用strings.LastIndex找最后一个句点 (.) 但这可能更脆弱,因为会有一些边缘条件(比如没有扩展名)filepath.Ext如果 Go 是使用除句点以外的扩展分隔符的理论 O/S 上运行。 |
|
|
|
|
|