\ / または } のいずれかの文字が後に続かない場合、文字列からバックスラッシュを削除する正規表現があります。
この文字列を次のように変換する必要があります。
foo\bar\\batz\/hi
これに:
foobar\\batz\/hi
しかし、問題は、バックスラッシュが進むにつれて、それぞれのバックスラッシュを処理していることです。したがって、最初のバックスラッシュを削除し、別のバックスラッシュが続くため 2 番目のバックスラッシュを無視するという規則に従います。しかし、3 つ目に到達すると、別のものが続かないため、それを削除します。
私の現在のコードは次のようになります。str.replace(/\\(?!\\|\/|\})/g,"")
しかし、結果の文字列は次のようになります。foobar\batz\/hi
3番目のバックスラッシュをスキップするにはどうすればよいですか? それとも、ある種の明示的な否定的な検索と置換タイプのことを行う場合ですか? 例えば。'\' を置換しますが、'\\'、'\/' または '\}' は置換しませんか?
助けてください!:)
編集
申し訳ありませんが、説明する必要がありました-私はjavascriptを使用しているため、否定的な後読みはできないと思います...