在连续的新行上分割字符串

时间:2018-08-30 13:54:37

标签: javascript regex string split

我有一个看起来与此类似的字符串...

[1.2.1] - 08/30/2018
### Added
1. A new POPUP

[1.2.0] - 08/16/2018
### Added
1. Created a CHANGELOG

它将始终采用相似的格式,条目之间始终会有一个空行。我正在尝试做的是在空行上分割字符串。我正在尝试使用JS的.split()方法,这就是我所拥有的;

MyString.split('/([\r\n]{2})/g');

这些是我得到的结果:

[[1.2.1] - 08/30/2018↵### Added↵1. Changes POPUP↵↵[1.2.0] - 08/16/2018↵### Added↵1. Created a CHANGELOG]

我期望的结果:

[[1.2.1] - 08/30/2018↵### Added↵1. Changes POPUP],
[[1.2.0] - 08/16/2018↵### Added↵1. Created a CHANGELOG]

不确定我在这里缺少什么。

-编辑

这是一个非常具体的问题,关于将单个字符串转换为文本块数组(以空行分割),而不是一般性的笼统问题:“为什么此正则表达式不起作用”

-编辑#2 在查看评论之后,我修改了使用MyString.split(/[\r\n]{5,}/)的方法,并且不得不在条目之间添加2个额外的空行,

[1.2.1] - 08/30/2018
### Added
1. Changes POPUP



[1.2.0] - 08/16/2018
### Added
1. Created a CHANGELOG

为什么我必须使用{5}而不是{4}以获得我想要的结果?

-编辑#3

稍后重新审视此问题后,我能够获得所需的结果。 在这种情况下,解决方案是使用MyString.split(/[\r\n]{3,}/)并重新格式化整个数据块,以使“版本”之间有两个空白行;

[1.2.1] - 08/30/2018
### Added
1. Popup to alert of new updates
2. Users now have a button to show closed quotes in addition to open quotes.

### Updates
1. Table now by default, hides closed quotes.
2. Refactored color key.
3. Refactored view control buttons.


[1.2.1] - 08/30/2018
### Added
1. Changes POPUP


[1.2.0] - 08/16/2018
### Added
1. Created a CHANGELOG

最终,数据结构的重新格式化导致了预期的结果。

0 个答案:

没有答案