我需要分割一个用户定义的字符串,它可能看起来像这样
[test1]-[test2]>>[test3]Some Text:[test4]|test:[test199]|some_text:[test0][test100]
最终我希望得到一个JS列表,其形式如下所示:
["[test1]", "-", "[test2]", ">>", "[test3]", "Some Text:", "[test4]", "|test:", "[test199]", "|some_text:", "[test0]", "[test100]"]
我希望能够根据[]括号中的变量和不在括号中的内容来分割文本。
这里的问题是,我只能得到[]括号中的所有内容或更静态的解决方案。
[]括号中的所有内容
(\[.*?\])
不完全正确的正则表达式
((\[.*?\]))|([a-zA-Z0-9->:|_ ]*(?!\]))
这将举例说明,使用此类文本不起作用。
[test100
.split(/(\[[^\][]*])/).filter(Boolean)
。 - Wiktor Stribiżew(\[.*?\])
对你来说甚至部分都没有起作用。 - Wiktor Stribiżew