简单的问题,但在文档中找不到它.
如何将字符串或数组切片n直到永远?
>> 'Austin'[1..3]
=> "ust"
>> 'Austin'[1..]
SyntaxError: compile error
(irb):2: syntax error, unexpected ']'
from (irb):2
Run Code Online (Sandbox Code Playgroud)
Nak*_*lon 154
使用反向索引:
[1..-1]
Run Code Online (Sandbox Code Playgroud)
Ruby和其他一些语言中的元素具有直接索引和反向(我可以在术语中做错).因此,字符串的长度n具有0..(n-1)和附加(-n)..-1指标,但仅此而已.您不能使用>=n或<-n索引.
'i' 'n'|'A' 'u' 's' 't' 'i' 'n'|'A' 'u' 's' 't' 'i' 'n'|'A' 'u' 's'
-8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8
<- error | you can use this | error ->
Run Code Online (Sandbox Code Playgroud)
使用Ruby 2.6中引入的无限范围,这非常优雅:
string = 'Austin'
string[1..] # => ustin
Run Code Online (Sandbox Code Playgroud)
希望对某人有用。到目前为止,从最佳方法中删减了两个字符,一旦定期采用无穷范围,它们将非常可读。
| 归档时间: |
|
| 查看次数: |
41925 次 |
| 最近记录: |