了解标准库是一个非常好的学习语言的方法。接下里的一些章节我们将详细研究标准库中的类型,方法,结合实际应用案例进行有趣的编程。
字符串处理是比较基础的库,我们从简单的库开始入门。
本节我们将继续用实例代码研究以下函数的用法。
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
}