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 に答える