用花括号分割字符串作为分隔符?

raw*_*rrr 0 javascript regex split

'{5}<blah>{0}</blah>'
Run Code Online (Sandbox Code Playgroud)

我想把它变成:

['{5}', '<blah>', '{0}', '</blah>']
Run Code Online (Sandbox Code Playgroud)

我目前使用: ________.split(/({.*?})/);

但是当花括号是第一个字符时,这会失败:

'{0}<blah>'
Run Code Online (Sandbox Code Playgroud)

变成了: ['', '{0}', '<blah>']......一个3元素的数组,而不是一个2

我的正则表达式有什么问题?

谢谢!

Ste*_*all 5

你的正则表达式没有任何问题,但是你如何使用split是一个问题.Split会根据分隔符返回一个数组,因此如果分隔符为FIRST,它会为您提供分割项左侧和右侧的内容.

只需检查第一项是否=='',如果是,则将其删除.

  • 我在打字的时候读了你的答案!:) (4认同)