From 6989f24117f4d2e90f5ec98fb30d60fff4386f9e Mon Sep 17 00:00:00 2001 From: knu Date: Wed, 16 Sep 2015 06:16:15 +0000 Subject: [PATCH] [DOC] Revise the character literal part. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51875 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- ChangeLog | 5 +++++ doc/syntax/literals.rdoc | 23 +++++++++++------------ 2 files changed, 16 insertions(+), 12 deletions(-) diff --git a/ChangeLog b/ChangeLog index 377dae254f..942bc86140 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Wed Sep 16 15:08:17 2015 Akinori MUSHA + + * doc/syntax/literals.rdoc (Strings): [DOC] Revise the character + literal part. + Wed Sep 16 14:55:33 2015 Akinori MUSHA * doc/syntax/literals.rdoc (Strings): [DOC] Document the full list diff --git a/doc/syntax/literals.rdoc b/doc/syntax/literals.rdoc index 7fcd7ca3a3..438fd18d1e 100644 --- a/doc/syntax/literals.rdoc +++ b/doc/syntax/literals.rdoc @@ -147,22 +147,22 @@ be concatenated as long as a percent-string is not last. %q{a} 'b' "c" #=> "abc" "a" 'b' %q{c} #=> NameError: uninitialized constant q -One more way of writing strings is using ?: - - ?a #=> "a" - -Basically only one character can be placed after ?: - - ?abc #=> SyntaxError - -Exceptionally, \C-, \M- and their combination are allowed -before a character. They mean "control", "meta" and "control-meta" -respectively: +There is also a character literal notation to represent single +character strings, which syntax is a question mark (?) +followed by a single character or escape sequence that corresponds to +a single codepoint in the script encoding: + ?a #=> "a" + ?abc #=> SyntaxError + ?\n #=> "\n" + ?\s #=> " " + ?\\ #=> "\\" + ?\u{41} #=> "A" ?\C-a #=> "\x01" ?\M-a #=> "\xE1" ?\M-\C-a #=> "\x81" ?\C-\M-a #=> "\x81", same as above + ?あ #=> "あ" === Here Documents @@ -350,4 +350,3 @@ one of the array entries you must escape it with a "\\" character: If you are using "(", "[", "{", "<" you must close it with ")", "]", "}", ">" respectively. You may use most other non-alphanumeric characters for percent string delimiters such as "%", "|", "^", etc. -