diff options
author | Tanaka Akira <[email protected]> | 2024-06-03 12:24:55 +0900 |
---|---|---|
committer | Tanaka Akira <[email protected]> | 2024-06-03 12:24:55 +0900 |
commit | ca2170e69f454259c612143a8c3bf6ab576d7f4d (patch) | |
tree | 0353cd474c61881ad37116fd2021837b149af0fa /doc | |
parent | 036d0cdbc653920d145a1a7f4dcd1bc149a75e13 (diff) |
[DOC] percent literals can be nested.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/syntax/literals.rdoc | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/doc/syntax/literals.rdoc b/doc/syntax/literals.rdoc index 0c1e4a434b..01df0c09b8 100644 --- a/doc/syntax/literals.rdoc +++ b/doc/syntax/literals.rdoc @@ -453,6 +453,8 @@ may use these paired delimiters: * <tt><</tt> and <tt>></tt>. * Any other character, as both beginning and ending delimiters. +The first four pairs (brackets, parenthesis, braces, and angle brackets) can be nested. + These are demonstrated in the next section. === <tt>%q</tt>: Non-Interpolable String Literals @@ -467,6 +469,10 @@ The created string is the same as if you created it with single quotes: %|foo bar baz| # => "foo bar baz" # Using two |. %:foo bar baz: # => "foo bar baz" # Using two :. %q(1 + 1 is #{1 + 1}) # => "1 + 1 is \#{1 + 1}" # No interpolation. + %q[foo[bar]baz] # => "foo[bar]baz" # brackets can be nested. + %q(foo(bar)baz) # => "foo(bar)baz" # parenthesis can be nested. + %q{foo{bar}baz} # => "foo[bar]baz" # braces can be nested. + %q<foo<bar>baz> # => "foo[bar]baz" # angle brackets can be nested. === <tt>% and %Q</tt>: Interpolable String Literals @@ -488,6 +494,10 @@ or <tt>%W</tt> (interpolable): %w(#{1 + 1}) # => ["\#{1", "+", "1}"] %W(#{1 + 1}) # => ["2"] + # The nested delimiters evaluated to a flat array of strings + # (not nested array). + %w[foo[bar baz]qux] # => ["foo[bar", "baz]qux"] + === <tt>%i and %I</tt>: Symbol-Array Literals You can write an array of symbols with <tt>%i</tt> (non-interpolable) |