Go Strings: Difference between revisions

From NovaOrdis Knowledge Base
Jump to navigation Jump to search
Line 45: Line 45:
<tt>[[Go Built-In Functions Length and Capacity#len.28.29|len()]]</tt>  
<tt>[[Go Built-In Functions Length and Capacity#len.28.29|len()]]</tt>  


Indexing operator <tt>[[Go Concepts - Operators#.5B.5D|[] ]]</tt>: <tt>s[i]</tt> returns a <tt>[[Go Integers#byte|byte]]</tt> (<tt>uint8</tt>)
Indexing operator <tt>[[Go Concepts - Operators#.5B.5D|[]]]</tt>: <tt>s[i]</tt> returns a <tt>[[Go Integers#byte|byte]]</tt> (<tt>uint8</tt>)

Revision as of 01:23, 23 March 2016

External

Internal

Overview

The pre-declared String type identifier is string. String values are (possibly empty) sequences of bytes. String values are immutable.

String Literals

A string literal is a string constant obtained from concatenating a sequence of characters.

Raw String Literals

Raw string literals are sequences of characters enclosed by backquotes (backticks) `. Any other character is taken literally, back slashes have no special meaning and new lines can appear. Carriage return characters inside raw string literals are discarded. The following code:

var sl = `Example \n \t
...
"something"`
fmt.Println(sl);

will produce:

Example \n \t
...
"something"

Interpreted String Literals

Interpreted string literals are character sequences between double quotes, as in "example".

Interpreted strings allow escaping (\n or \t).

String Operators and Functions

len()

Indexing operator []: s[i] returns a byte (uint8)