]> Cypherpunks repositories - gostls13.git/commitdiff
strconv: add example for Unquote.
authorShenghou Ma <minux.ma@gmail.com>
Tue, 10 Dec 2013 04:24:58 +0000 (23:24 -0500)
committerShenghou Ma <minux.ma@gmail.com>
Tue, 10 Dec 2013 04:24:58 +0000 (23:24 -0500)
R=golang-dev, r
CC=golang-dev
https://golang.org/cl/38920043

src/pkg/strconv/quote_example_test.go [new file with mode: 0644]

diff --git a/src/pkg/strconv/quote_example_test.go b/src/pkg/strconv/quote_example_test.go
new file mode 100644 (file)
index 0000000..405a57e
--- /dev/null
@@ -0,0 +1,35 @@
+// 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 strconv_test
+
+import (
+       "fmt"
+       "strconv"
+)
+
+func ExampleUnquote() {
+       test := func(s string) {
+               t, err := strconv.Unquote(s)
+               if err != nil {
+                       fmt.Printf("Unquote(%#v): %v\n", s, err)
+               } else {
+                       fmt.Printf("Unquote(%#v) = %v\n", s, t)
+               }
+       }
+
+       s := `cafe\u0301`
+       // If the string doesn't have quotes, it can't be unquoted.
+       test(s) // invalid syntax
+       test("`" + s + "`")
+       test(`"` + s + `"`)
+
+       test(`'\u00e9'`)
+
+       // Output:
+       // Unquote("cafe\\u0301"): invalid syntax
+       // Unquote("`cafe\\u0301`") = cafe\u0301
+       // Unquote("\"cafe\\u0301\"") = café
+       // Unquote("'\\u00e9'") = é
+}