Go语言去除字符串中的指定字符
Go语言中常用的去除字符串中指定字符的方法如下表所示。
接下来通过一个示例来演示部分字符串处理函数的使用,代码如下所示。
声明:《Go系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。
| 方法 | 功能描述 |
|---|---|
| func Trim(s string, cutset string) string | 将字符串 s 首尾包含在 cutset 中的任一字符去掉返回 |
| func TrimFunc(s string, f func(rune) bool) string | 将字符串 s 首尾满足函数 f(r)==true 的字符去掉返回 |
| func TrimLeft(s string, cutset string) string | 将字符串 s 左边包含在 cutset 中的任一字符去掉返回 |
| func TrimLeftFunc(s string, f func(rune) bool) string | 将字符串 s 左边满足函数 f(r)==true 的字符去掉返回 |
| func TrimPrefix(s, prefix string) string | 将字符串 s 中前缀字符串 prefix 去掉返回 |
| func TrimRight(s string, cutset string) string | 将字符串 s 右边包含在 cutset 中的任一字符去掉返回 |
| fune TrimRightFunc(s string, f func(rune) bool) string | 将字符串 s 右边满足函数 f(r)==true 的字符去掉返回 |
| func TrimSpace(s string) string | 将字符串 s 首尾空白去掉返回 |
| func TrimSuffix(s, suffix string) string | 将字符串 s 中后缀字符串 suffix 去掉返回 |
接下来通过一个示例来演示部分字符串处理函数的使用,代码如下所示。
package main
import(
"fmt"
"strings"
"unicode"
)
func main(){
TestTrim()
TestTrimFunc()
TestTrimLeft()
TestTrimLeftFunc()
TestTrimRight()
TestTrimRightFunc()
TestTrimSpace()
TestTrimPrefix()
TestTrimSuffix()
}
//将字符串s首尾包含在cutset中的任一字符去掉返回
func TestTrim(){
fmt.Println(strings.Trim(" steven wang ", " "))
}
//将字符串s首尾满足函数 f(r)==true 的字符去掉返回
func TestTrimFunc(){
f := func(c rune)bool {
return !unicode.IsLetter(c) && !unicode.IsNumber(c)
}
fmt.Println(strings.TrimFunc("! @#¥ %steven wang%$#@", f))
}
//将字符串s左边包含在cutset中的任一字符去掉返回
func TestTrimLeft(){
fmt.Println(strings.TrimLeft(" steven wang ", " "))
}
//将字符串s左边满足函数f(r)==true的字符去掉返回
func TestTrimLeftFunc(){
f := func(c rune)bool{
return !unicode.IsLetter(c) && !unicode.IsNumber(c)
}
fmt.Println(strings.TrimLeftFunc("!@#¥%steven wang%¥#@", f))
}
//将字符串s右边包含在cutset中的任一字符去掉返回
func TestTrimRight(){
fmt.Println(strings.TrimRight(" steven wang ", " "))
}
//将字符串s右边满足函数f(r)==true的字符去掉返回
func TestTrimRightFunc(){
f := func(c rune)bool{
return !unicode.IsLetter(c) && !unicode.IsNumber(c)
}
fmt.Println(strings.TrimRightFunc("!@#¥%steven wang%¥#@", f))
}
//将字符串s首尾空白去掉返回
func TestTrimSpace(){
fmt.Println(strings.TrimSpace(" \t\n a lone gopher \n\t\r\n"))
}
//将字符串s中前缀字符串prefix去掉返回
func TestTrimPrefix(){
var s = "Goodbye, world!"
s = strings.TrimPrefix(s, "Goodbye")//, world!
fmt.Println(s)
}
//将字符串s中后缀字符串suffix去掉返回
func TestTrimSuffix(){
var s = "Hello, goodbye, etc!"
s = strings.TrimSuffix(s, "goodbye, etc!")//Hello,
fmt.Println(s)
}
运行结果如下:
steven wang
steven wang
steven wang
steven wang%¥#@
steven wang
!@#¥%steven wang
a lone gopher
, world!
Hello,
声明:《Go系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。