javascript - 如何将文本字符串拆分为多个部分?

标签 javascript string split

我有以下字符串:

var str = '01. Part1. 02. Part2. 04. Part3';

我需要从中获取数组:

['01. Part1.', '02. Part2.', '04. Part3']

到目前为止我已经尝试过:

str.split(/\d+.(.*)/);

但结果不是我需要的:

["", " Part1. 02. Part2. 04. Part3", ""]

最佳答案

主要问题是 * 是贪婪的。通过添加 ? 使其变得懒惰。此外,这与 match 一起使用效果更好。方法,因为 split 会将正则表达式匹配视为定界符,(没有捕获组)不会包含在结果中。

var str = '01. Part1. 02. Part2. 04. Part3';

var arr = str.match(/\d+\..*?(\.|$)/g);

console.log(arr);

(\.|$) 部分用于告诉 .*? 应该去哪里,并处理字符串末尾的差异,没有终端点的地方,就像其他部分一样。 $end-of-string 匹配。

关于javascript - 如何将文本字符串拆分为多个部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41665218/

相关文章:

javascript - Javascript 语法中的 : 和::和::有什么区别

powershell - 在键/值对处拆分 hastable

python - 自动拆分并生成列

javascript - Popover 不显示图像?

javascript - 在 chrome.storage 中保存数组

JavaScript - 随机函数结果之间的差异

c# - 使用 C# 根据计数和单词拆分字符串

C++从代码中的不同位置抛出相同的错误消息

python - 将具有日期时间值的字典的字符串表示形式转换回字典

MySQL日期结果按日期分割