如何在节点通过换行('\ n')拆分string?
如何在节点通过换行('\ n')拆分string? 我有简单的string像var a = "test.js\nagain.js"
,我需要得到["test.js", "again.js"]
。 我试过了
a.split("\n"); a.split("\\n"); a.split("\r\n"); a.split("\r");
但以上都不行。
尝试在/\r?\n/
等正则expression式上进行拆分,以便Windows和UNIX系统均可使用。
> "a\nb\r\nc".split(/\r?\n/) [ 'a', 'b', 'c' ]
如果该文件是本机系统(当然不能保证),那么Node可以帮助你:
var os = require('os'); a.split(os.EOL);
这对于从Node构造输出string通常更有用,但对于平台可移植性来说。
a = a.split("\n");
请注意, split
返回新的数组,而不是只分配给原始string。 您需要明确地将其存储在一个variables中。
我做了一个eol
模块,用于处理节点或浏览器中的行尾。 它有一个拆分方法
var lines = eol.split(text)
第一个应该工作:
> "a\nb".split("\n"); [ 'a', 'b' ] > var a = "test.js\nagain.js" undefined > a.split("\n"); [ 'test.js', 'again.js' ]
你需要使用简单的引号
string.split('\n');
这里简单的引号工作。