我有這樣的節點:分割字符串通過多個空格的NodeJS
>out
'java 1303 root 187u CHR 166,0 0t0 14586 /dev/ttyACM0\n'
>typeof out
'string'
> out.split("\\s+");
[ 'java 1303 root 187u CHR 166,0 0t0 14586 /dev/ttyACM0\n' ]
我希望分割後的字符串,例如['java','1303','root'...]
我有這樣的節點:分割字符串通過多個空格的NodeJS
>out
'java 1303 root 187u CHR 166,0 0t0 14586 /dev/ttyACM0\n'
>typeof out
'string'
> out.split("\\s+");
[ 'java 1303 root 187u CHR 166,0 0t0 14586 /dev/ttyACM0\n' ]
我希望分割後的字符串,例如['java','1303','root'...]
拆分與文字字符串\s+
,它會分裂成"a\\s+b"
和a
b
。
使用正則表達式,RegExp("\\s+")
或/\s+/
(更好的,因爲該模式是靜態的):
var s = 'java 1303 root 187u CHR 166,0 0t0 14586 /dev/ttyACM0\n';
console.log(s.trim().split(/\s+/));
我也建議修剪輸入在開始擺脫空元素的/結束。
另請注意,.split(/\s+/g)
= .split(/\s+/)
(全局修飾符暗示String#split()
)。
'.split(/ \ s + /)'? – Andrey
'out.split(/ \ s + /)'。 '「\\ s +」'是一個字符串,編譯器將搜索確切的值而不是模式。使用正則表達式模式 – Rajesh