我从外壳中得到一串几行。是否有可能得到一个Array
每行都是它的元素?
问问题
5471 次
2 回答
9
当然,根据输出,您可以将其拆分。例如:
lines = `ls`.split
此解决方案独立于您用于执行程序的方法。只要你得到完整的字符串就可以split
了。
于 2013-03-26T10:35:17.690 回答
6
最初的问题是按行拆分split
,默认情况下,该函数在空白处拆分。虽然这可能就足够了,但您可能希望传入正则表达式,如下所示:
`ls -l`.split(/$/)
它返回数组中单独元素中的每一行。但是,它并没有摆脱最初的回车或换行。为此,您将需要使用该map
函数来迭代数组并应用于strip
每个数组,如下所示:
`ls -l`.split(/$/).map(&:strip)
于 2015-03-16T18:38:51.930 回答