我有一个包含可用打印机列表的程序的输出流,我想将其转换为数组。
这是我的标准输出:
OneNote
Microsoft XPS Document Writer
Microsoft Print to PDF
Fax
我正在寻找一种解决方案,它会给我:
['OneNote', 'Microsoft XPS Document Writer', 'Microsoft Print to PDF', 'Fax']
我试过了stdout.split('\n'),但它变成了
[
'OneNote \r\r',
'Microsoft XPS Document Writer \r\r',
'Microsoft Print to PDF \r\r',
'Fax \r\r',
'\r\r',
''
]
然后我试了stdout.split('\r\r\n')一下,结果变成了
[
'OneNote ',
'Microsoft XPS Document Writer ',
'Microsoft Print to PDF ',
'Fax ',
'',
''
]
现在我可以从字符串的末尾删除空格,stdout.split('\r\r\n').map(printer => printer.trim())但我仍然需要过滤掉最后两个空字符串,所以我想知道有没有更好/优雅的方法来解决这个问题?
stdout.split('\r\r\n')
.map(printer => printer.trim())
.filter(printer => Boolean(printer.length))
狐的传说
相关分类