Javascript 正则表达式:在换行符、制表符和两者的组合上拆分字符串

Javascript 正则表达式:在换行符、制表符和两者的组合上拆分字符串,javascript,regex,Javascript,Regex,我尝试使用制表符、换行符或两者的任何组合或重复来拆分字符串。 例如,诸如“a\tB\nC\t\tD\n\nE\t\nF\n\tG”之类的字符串应该返回 “A”、“B”等的数组。到目前为止,我已经能够得到一些结果,但它不是最佳的: a=a.replace(/\t\n/,"\t").replace(/\n\t/,"\t").split(/\t+|\n+/); 我愿意接受任何关于如何改进它的建议。试试这个“A\tB\nC\t\tD\n\nE\t\nF\n\tG”。split(/\s+/)你可以使用这

我尝试使用制表符、换行符或两者的任何组合或重复来拆分字符串。 例如,诸如“a\tB\nC\t\tD\n\nE\t\nF\n\tG”之类的字符串应该返回 “A”、“B”等的数组。到目前为止,我已经能够得到一些结果,但它不是最佳的:

a=a.replace(/\t\n/,"\t").replace(/\n\t/,"\t").split(/\t+|\n+/);

我愿意接受任何关于如何改进它的建议。

试试这个
“A\tB\nC\t\tD\n\nE\t\nF\n\tG”。split(/\s+/)
你可以使用这个正则表达式
/[\r\n\t]+/g

"A\tB\nC\t\tD\n\nE\t\nF\n\tG".split(/[\r\n\t]+/g)

    //print ["A", "B", "C", "D", "E", "F", "G"]

尝试
。使用
\R
而不是
\n
拆分(/[\t\n]+/)
可以捕获所有unicode形式的换行符(如回车换行符
\R\n
)。编辑:这是离题的我很抱歉,这里到底有什么问题?谢谢Wiktor,你的答案正是我需要的。谢谢你关于Patrick的建议,我不知道。谢谢,但在这种情况下,我需要保留空格。好建议,不过我会记住的。