Golang 如何从切片中删除后缀

Golang 如何从切片中删除后缀

在Go语言中,切片比数组更强大、更灵活、更方便,是一种轻量级的数据结构。切片是一个可变长度的序列,它存储相似类型的元素,您不能在同一个切片中存储不同类型的元素。

在Go字节片中,您可以使用 TrimSuffix() 函数从给定的片中删除后缀。此函数通过切掉给定的尾缀字符串来返回原始片的子片。如果给定的字节片不包含指定的后缀字符串,则此函数返回原始片而没有任何更改。它在字节包下定义,因此您必须在程序中导入字节包以访问TrimSuffix函数。

语法:

func TrimSuffix(ori_slice, sfx []byte) []byte

其中,ori_slice是原始的字节切片,sfx表示后缀。让我们通过给定的示例来讨论这个概念:

示例1:

//Go程序说明
//修剪字节切片中的后缀的概念
package main

import (
 "bytes"
 "fmt"
)

func main() {

 //创建和初始化
 //字节片的使用简写声明
 slice_1 := []byte{'!', '!', 'G', 'e', 'e', 'k', 's',
  'f', 'o', 'r', 'G', 'e', 'e', 'k', 's', '#', '#'}

 slice_2 := []byte{'A', 'p', 'p', 'l', 'e'}
 slice_3 := []byte{'%', 'g', 'e', 'e', 'k', 's', '%'}

 //显示切片
 fmt.Println("Original Slice:")
 fmt.Printf("Slice 1: %s", slice_1)
 fmt.Printf("\nSlice 2: %s", slice_2)
 fmt.Printf("\nSlice 3: %s", slice_3)

 //修剪指定的后缀Unicodes
 //来自给定的字节片
 //使用TrimSuffix函数
 res1 := bytes.TrimSuffix(slice_1, []byte("#"))
 res2 := bytes.TrimSuffix(slice_2, []byte("le"))
 res3 := bytes.TrimSuffix(slice_3, []byte("as"))

 //显示结果
 fmt.Printf("\n\nNew Slice:\n")
 fmt.Printf("\nSlice 1: %s", res1)
 fmt.Printf("\nSlice 2: %s", res2)
 fmt.Printf("\nSlice 3: %s", res3)

} 

输出:

Original Slice:
Slice 1: !!GeeksforGeeks##
Slice 2: Apple
Slice 3: %geeks%

New Slice:

Slice 1: !!GeeksforGeeks#
Slice 2: App
Slice 3: %geeks%

示例2:

//Go程序说明
//修剪字节切片中的后缀的概念
package main

import (
 "bytes"
 "fmt"
)

func main() {

 //创建和修剪
 //使用TrimSuffix函数的字节片
 res1 := bytes.TrimSuffix([]byte("****Welcome to GeeksforGeeks****"),
             []byte("*"))
 res2 := bytes.TrimSuffix([]byte("Learning how to trim a slice of bytes"),
              []byte("bytes"))

 res3 := bytes.TrimSuffix([]byte("GeeksforGeeks, Geek"), []byte("apple"))

 //显示结果
 fmt.Printf("Final Slice:\n")
 fmt.Printf("\nSlice 1: %s", res1)
 fmt.Printf("\nSlice 2: %s", res2)
 fmt.Printf("\nSlice 3: %s", res3)
} 

输出:

Final Slice:

Slice 1: ****Welcome to GeeksforGeeks***
Slice 2: Learning how to trim a slice of 
Slice 3: GeeksforGeeks, Geek

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程