0

在 JavaScript 中,我试图用 ';' 分割一个字符串 如果前面没有(转义)'\'。

该字符串可能如下所示:

asd;123;&auml\;;33;

所以上面的字符串应该被拆分成:

  • asd
  • 123
  • ä\;
  • 33

我以为 [^\]; 可以解决问题,但这会选择';'的前一个字符 以及如果它不是'\'。我只想要';' 虽然没有前面的字符。

4

2 回答 2

1

如果您不介意使用该.match方法,可以使用以下方法:

str = 'asd;123;&auml\\;;33;';
regex = /(?:\\;|[^;])+/g;
result = str.match(regex);

jsfiddle

于 2013-09-19T14:42:10.187 回答
0

您可以匹配,而不是拆分:

/(\\.?|[^;])+/g
于 2013-09-19T14:40:18.803 回答