-1

私は次のような文字列を持っています

'frontend\less\defaults\layout.css?file=\foo'

それを置き換える正規表現が欲しい

'frontend/less/defaults/layout.css?file=\foo'

を試してみましたが、何とか避けたい/\\/gの後に一致するものが続きます\?

4

3 に答える 3

2

以下は機能します。正規表現で先読みを使用します。

var myString="path\\to\\file.php?query=\\something"
var r=(/\?/g.test(myString))?/(\\)(?=.+[\?])/ig:/\\/ig;
    .replace(r,"/")
于 2013-05-17T05:50:47.883 に答える
1

の数を事前に知っていない限り\、わかりやすい正規表現でこれを行うことができるとは思えません。私は...するだろう:

  • 文字列を 2 つの部分に分割します: の前の部分?とその後の部分
  • 最初の部分で正規表現を使用してください
  • 2 つの弦を元に戻します。
于 2013-05-17T05:48:13.573 に答える