2012-10-11 46 views
5

Xin vui lòng, tôi có dòng mã sau đây để viết tiêu đề của một tập tin, nhưng tôi muốn in từng phần tử của mảng @order hai lần cạnh nhau. Ví dụ: $ 1 $ 1 $ 2 $ 2 $ 3 $ 3 ... theo cách mà tôi sẽ có mỗi cặp cột của tệp đầu ra của tôi có cùng tên.Làm cách nào để in các phần tử của mảng lặp lại hai lần mỗi cạnh?

print(join("\t", "Case_ID", "State", "Ind", "DoB", @order) . "\n"); 

Tôi có thể làm điều gì đó đơn giản hoặc tôi phải lặp lại mảng để lặp lại các phần tử trước khi in?

Cảm ơn!

+0

Theo định nghĩa, bạn nhất thiết phải để lặp. Bạn có nhiều tùy chọn như thế nào bạn lặp lại, mặc dù. – ikegami

+0

bạn có thể sử dụng hệ số chuỗi không? '" $ _ "x 2' – squiguy

Trả lời

7

Bạn cần phải lặp dù sao, nhưng bạn có thể sử dụng bản đồ cho sang trọng cú pháp:

# map { $_, $_ } @order 


print join("\t", "Case_ID", "State", "Ind", "DoB", map { $_, $_ } @order)) 
     . "\n"; 
+0

Hoàn hảo! Cảm ơn! – vitor

Các vấn đề liên quan