小编典典

Javascript 和 regex:拆分字符串并保留分隔符

all

我有一个字符串:

var string = "aaaaaa<br />&dagger; bbbb<br />&Dagger; cccc"

我想用分隔符<br />后跟一个特殊字符来分割这个字符串。

为此,我正在使用这个:

string.split(/<br \/>&#?[a-zA-Z0-9]+;/g);

我得到了我需要的东西,除了我丢失了分隔符。这是示例:http:
//jsfiddle.net/JwrZ6/1/

如何保留分隔符?


阅读 98

收藏
2022-07-17

共1个答案

小编典典

我遇到了类似但略有不同的问题。无论如何,这里是三个不同场景的示例,用于保留分隔符的位置。

"1、2、3".split("、") == ["1", "2", "3"]
"1、2、3".split(/(、)/g) == ["1", "、", "2", "、", "3"]
"1、2、3".split(/(?=、)/g) == ["1", "、2", "、3"]
"1、2、3".split(/(?!、)/g) == ["1、", "2、", "3"]
"1、2、3".split(/(.*?、)/g) == ["", "1、", "", "2、", "3"]

警告:
第四个只能拆分单个字符。提出了另一种选择:

// Split a path, but keep the slashes that follow directories
var str = 'Animation/rawr/javascript.js';
var tokens = str.match(/[^\/]+\/?|\//g);
2022-07-17