我有一个文件,该文件内容是这样的:拆分一行到列
first;48548a;48954a,48594B
second;58757a;5875b
third;58756a;58576b;5867d;56894d;45864a
而且我想改变这样的格式:
first;48548a
first;48954a
first;48594B
second;58757a
second;5875b
third;58756a
third;58576b
third;5867d
third;56894d
third;45864a
在bash,我可以使用这个命令,使其发生:
awk -F\; '{for(n=2; n<=NF; n++) { printf("%s;%s\n",$1,$n); }}' input.txt
但现在我想用Ruby来这样做。我怎样才能做到这一点?
就个人而言,我宁愿使用'num,* data = line.strip.split(/ [;,] /)'来转移',因为它不会改变任何地方,'data'的含义不是在其一生中改变。 – 2012-08-09 03:41:24
@AndrewMarshall是的,我也更喜欢那个!感谢您的建议;我已经更新了我的答案。 – 2012-08-09 03:53:35
嗨Darshan,(*)在*数据中的功能是什么? – adhown 2012-08-09 08:34:16