-1

何が間違っているのかわかりません。交換したい文字列があります

<?xml version="1.0" encoding="utf-8" ?>
 <Sections>
  <Section>

正規表現を使用して を含むすべてを置き換え<Section>、残りはそのままにしておきます。

arrayValues[index].replace("/[([.,\n,\s])*<Section>]/", "---");

私の正規表現の何が問題になっていますか? これは、改行とスペースを含むすべての文字を で置き換えることを意味しません<Section>---?

4

2 に答える 2

0
arrayValues[index].replace("/[([.,\n,\s])*<Section>]/", "---");

私の正規表現の何が問題になっていますか?

正規表現ではなく、文字列リテラルです。文字列は正規表現に変換されますが、スラッシュが含まれます。代わりに正規表現リテラルを使用します。

arrayValues[index].replace(/[\S\s]*<Section>/, "---");

また、不要な文字が多すぎます。[]全体的にキャラクタークラスを構築しますが、これはあなたが望むものではありません。キャプチャ グループ()は、それ自体を繰り返すことができる文字クラスをラップするだけです。また、.文字クラス内のドットは、すべての文字ではなく、リテラルのドットと一致します。

于 2013-08-06T18:34:19.377 に答える