aboutsummaryrefslogtreecommitdiffstats
path: root/Godeps/_workspace/src/golang.org/x/text/transform/examples_test.go
blob: f2e284dba52b19696bcc0afb7f1cf256a4c4e0d8 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
// Copyright 2013 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

package transform_test

import (
    "fmt"
    "unicode"

    "golang.org/x/text/transform"
    "golang.org/x/text/unicode/norm"
)

func ExampleRemoveFunc() {
    input := []byte(`tschüß; до свидания`)

    b := make([]byte, len(input))

    t := transform.RemoveFunc(unicode.IsSpace)
    n, _, _ := t.Transform(b, input, true)
    fmt.Println(string(b[:n]))

    t = transform.RemoveFunc(func(r rune) bool {
        return !unicode.Is(unicode.Latin, r)
    })
    n, _, _ = t.Transform(b, input, true)
    fmt.Println(string(b[:n]))

    n, _, _ = t.Transform(b, norm.NFD.Bytes(input), true)
    fmt.Println(string(b[:n]))

    // Output:
    // tschüß;досвидания
    // tschüß
    // tschuß
}