2012-03-15 39 views
8

Tôi có một mảng các mảng hiện đang in từng đối tượng trong mảng trên một dòng riêng. Mảng chủ nắm giữ nhiều người khác nhau bên trong nó. Mỗi người có 5 đối tượng khác nhau được lưu trữ để họ (ví dụ Last Name, First Name, DOB .. vv)In một mảng các mảng trên một dòng trong bảng điều khiển (một dòng trên một đối tượng mảng chính) trong Ruby

Kournikova 
Anna 
F 
6/3/1975 
Red 

Hingis 
Martina 
F 
4/2/1979 
Green 

Seles 
Monica 
F 
12/2/1973 
Black 

Những gì tôi đang cố gắng làm là in ra mỗi người và các đối tượng tương ứng của họ trên cùng một dòng, mỗi người.

Có ai có giải pháp cho việc này không? Ngoài ra, đầu ra không được chứa dấu ngoặc đơn ([]) hoặc dấu phẩy. Tôi tự hỏi nếu nó chỉ đơn giản là cần phải là một chuỗi, hoặc nếu có cái gì đó tôi đang mất tích.

Một số mã của tôi dưới đây:

space_array = [split_space[0],split_space[1],split_space[3],new_date,split_space[5]] 
master << space_array 
puts master 

Sản lượng lý tưởng sẽ là một cái gì đó như thế này:

Kournikova Anna F 6/3/1975 Red 
Hingis Martina F 4/2/1979 Green 
Seles Monica F 12/2/1973 Black 
+3

Hãy thử và sử dụng văn bản thực tế chứ không phải là hình ảnh của văn bản trong bài viết của bạn. Khó phân tích cú pháp hơn. –

+0

Và nếu máy chủ lưu trữ hình ảnh không hoạt động, câu hỏi sẽ trở thành vô dụng. –

+0

Đã chỉnh sửa cho các đề xuất ở trên. – tandy

Trả lời

11
your_array.each do |person| 
    puts person.join(" ") 
end 
+0

nếu mảng chỉ chứa số. nếu your_array = [1, 2, 3, 4, 5]? sau đó làm thế nào để bạn in từng phần tử trên một dòng –

9

Các puts phương pháp sẽ tự động đặt một dòng mới. Sử dụng in thay vì in văn bản không có dòng mới.

Hoặc nếu bạn muốn, bạn có thể sử dụng chức năng kết hợp.

['a', 'b', 'c'].join(' ') 
=> 'a b c' 
3

Bạn chỉ có thể lặp qua mảng bên ngoài và join các mảng nội thành một chuỗi. Vì bạn không cung cấp dữ liệu ví dụ sẵn sàng cho việc sao chép và dán, sau đây là một số mã ví dụ tôi tạo thành:

outer_array.each { |inner| puts inner.join(' ') } 
Các vấn đề liên quan