我有一個數組,在這一點上是["firstname1 ", "lastname1", "firstname2 ", "lastname2", etc]
,我試圖想出一種方法來組合字符串,這樣我會有一個["firstname1 lastname1", "firstname2 lastname2", etc]
的數組。結合Ruby中的數組的字符串元素
4
A
回答
11
使用Enumerable#each_slice
,您可以迭代切片n
元素(在您的案例中爲2)。
通過加入這兩個元素,你會得到你想要的。
a = ["firstname1 ", "lastname1", "firstname2 ", "lastname2"]
a.each_slice(2).map(&:join)
# => ["firstname1 lastname1", "firstname2 lastname2"]
1
一些其他的方法:
a = ["Shirley ", "Temple", "Oliver ", "Hardy", "John ", "Wayne"]
#1
(0...a.size).step(2).map { |i| a[i]+a[i+1] }
#=> ["Shirley Temple", "Oliver Hardy", "John Wayne"]
#2
enum = a.to_enum
(a.size/2).times.map { enum.next + enum.next }
#=> ["Shirley Temple", "Oliver Hardy", "John Wayne"]
#2A
enum = a.to_enum
names = []
loop { names << enum.next + enum.next }
names
#=> ["Shirley Temple", "Oliver Hardy", "John Wayne"]
#3
fname = nil
a.each_with_object([]) { |s,a| (s[-1]==' ') ? fname=s : a << fname+s }
#=> ["Shirley Temple", "Stan Laurel", "John Wayne"]
相關問題
- 1. 結合數組中的字符串值
- 2. 結合數組元素連接成一個字符串
- 3. 快速排序的字符串數組的元素結合數字和字符串
- 4. 將數組與布爾元素與Python中的字符串相結合
- 5. Ruby:從數組中刪除所有非字符串元素
- 6. 的Javascript結合數組或字符串
- 7. 集合中元素的子字符串
- 8. 從jquery數組元素的字符串
- 9. 將字符串數組與字符串結合的方法
- 10. 字符串分割到一個字符串數組的元素
- 11. 結構字符串數組打印最後輸入的元素
- 12. 結合numpy數組元素?
- 13. 在字符串數組項目元素中搜索字符串
- 14. 數組中的Ruby匹配字符串
- 15. 將字符串的部分匹配到Ruby中數組的元素
- 16. 如何枚舉字典中的字符串數組的元素?
- 17. 字符串數組(字符串)的C++元素依賴於源字符串
- 18. 打印字符或字符串的二維數組的元素?
- 19. 如何將字符串數組的元素連接到字符串數組?
- 20. 結合數組字符串在PHP
- 21. 結合每個元素的字符串列表用另一個字符串
- 22. Ruby:消除數組中其他字符串的子字符串
- 23. 搜索單元格數組中的非字符串元素
- 24. PHP數組字符串元素
- 25. PHP數組元素到字符串
- 26. 獲取元素從字符串數組
- 27. 用數組元素替換字符串
- 28. 打印字符串數組元素C++
- 29. 比較字符串數組元素?
- 30. 用字符串加入數組元素
感謝您的快速回復! – 2015-02-06 20:25:22