了解标准库是一个非常好的学习语言的方法。接下里的一些章节我们将详细研究标准库中的类型,方法,结合实际应用案例进行有趣的编程。

字符串处理是比较基础的库,我们从简单的库开始入门。

本节我们将继续用实例代码研究以下函数的用法。


func ToLower(s string) string
转换为小写
package main

import (
	"fmt"
	"strings"
)

func main() {
	fmt.Println(strings.ToLower("Gopher")) // gopher
}

func ToLowerSpecial(c unicode.SpecialCase, s string) string
ToLowerSpecial返回字符串s的副本,其中所有Unicode字母都使用c指定的大小写映射映射到其小写。
package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {
	fmt.Println(strings.ToLowerSpecial(unicode.TurkishCase, "Önnek İş")) // önnek iş
}

func ToTitle(s string) string
ToTitle返回字符串s的副本,其中所有Unicode字母映射到其Unicode标题大小写。
package main

import (
	"fmt"
	"strings"
)

func main() {
	// Compare this example to the Title example.
	fmt.Println(strings.ToTitle("her royal highness")) // HER ROYAL HIGHNESS
	fmt.Println(strings.ToTitle("loud noises")) // LOUD NOISES
	fmt.Println(strings.ToTitle("хлеб")) // ХЛЕБ
}

func ToTitleSpecial(c unicode.SpecialCase, s string) string
package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {
	fmt.Println(strings.ToTitleSpecial(unicode.TurkishCase, "dünyanın ilk borsa yapısı Aizonai kabul edilir")) 
        // DÜNYANIN İLK BORSA YAPISI AİZONAİ KABUL EDİLİR
}

func ToUpper(s string) string
package main

import (
	"fmt"
	"strings"
)

func main() {
	fmt.Println(strings.ToUpper("Gopher"))
}

func ToUpperSpecial(c unicode.SpecialCase, s string) string
package main

import (
	"fmt"
	"strings"
	"unicode"
)

func main() {
	fmt.Println(strings.ToUpperSpecial(unicode.TurkishCase, "örnek iş")) // ÖRNEK İŞ
}

func ToValidUTF8(s, replacement string) string
ToValidUTF8返回字符串s的副本,每次运行无效的UTF-8字节序列时都会被替换字符串替换,替换字符串可能为空。
package main

import (
	"fmt"
	"strings"
)

func main() {
	fmt.Printf("%s\n", strings.ToValidUTF8("abc", "\uFFFD")) // abc
	fmt.Printf("%s\n", strings.ToValidUTF8("a\xffb\xC0\xAFc\xff", "")) // abc
	fmt.Printf("%s\n", strings.ToValidUTF8("\xed\xa0\x80", "abc")) // abc
}