Как разделить линию и переставить ее элементы? - PullRequest
2 голосов
/ 23 октября 2009

У меня есть некоторые данные в одной строке, как показано ниже

abc edf xyz rfg yeg udh

Я хочу представить данные, как показано ниже

abc
xyz
yeg


edf
rfg
udh

так, чтобы альтернативные поля печатались с разделителями новой строки. Есть ли какие-нибудь вкладыши для этого?

Ответы [ 12 ]

0 голосов
/ 23 октября 2009

версии Ruby для сравнения:

ARGF.each do |line|
  groups = line.split
  0.step(groups.length-1, 2) { |x| puts groups[x] }
  puts
  1.step(groups.length-1, 2) { |x| puts groups[x] }
end

ARGF.each do |line|
  groups = line.split
  puts groups.select { |x| groups.index(x) % 2 == 0 }
  puts
  puts groups.select { |x| groups.index(x) % 2 != 0 }
end
0 голосов
/ 23 октября 2009

Вы также можете просто использовать tr: echo "abc edf xyz rfg yeg udh" | tr ' ' '\n'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...