解析字符串字符串数组我有这样的字符串:任何字符(除\ n)的与\ N个组合,\ n可以在字符串中的任何地方,并且重复0次或多次使用正则表达式
var input = "\nabc\n\n";
的预期成果是:
var output = ['\n', 'abc', '\n', '\n']
我可以使用input.split(“\ n”),使串入一个数组,但在这种情况下,我将失去\ n,其实我需要两个\ n和任何其他角色。
解析字符串字符串数组我有这样的字符串:任何字符(除\ n)的与\ N个组合,\ n可以在字符串中的任何地方,并且重复0次或多次使用正则表达式
var input = "\nabc\n\n";
的预期成果是:
var output = ['\n', 'abc', '\n', '\n']
我可以使用input.split(“\ n”),使串入一个数组,但在这种情况下,我将失去\ n,其实我需要两个\ n和任何其他角色。
我认为这将是更合适的。
> var s = "\nabc\n\n";
> s.match(/\n|[^\n]+/g)
[ '\n',
'abc',
'\n',
'\n' ]
好极了!这是我期待的,谢谢! – 2014-10-12 07:19:39
您可以使用
console.log(input.match(/\n|\w+/g)); // ["↵", "abc", "↵", "↵"]
谢谢Amit,\ w不匹配*()&^%$#@!〜〜等特殊字符,但我需要这些字符 – 2014-10-12 07:13:39
你可以尝试使用(?=\n)
?因为这不会实际捕获\n
字符
谢谢!但\ w不匹配特殊字符,如*(); +?/ ,. <> | \%$#@!〜〜 – 2014-10-12 07:10:02
你可以用多锚分裂。
input.split(/^|$/gm)
您将获得:
["
", "abc", "
", "
"]
你运行哪种语言? – 2014-10-11 16:50:15
javascript,谢谢! – 2014-10-12 07:20:56