私は5
すべての1value
+の間に入れようとしているpx
ので、1px
になるべき15px
であり、になる100px
べき1005px
です。
で検索し1(.*?)px
て置き換えて1$15px
いますが、機能していません...
私は5
すべての1value
+の間に入れようとしているpx
ので、1px
になるべき15px
であり、になる100px
べき1005px
です。
で検索し1(.*?)px
て置き換えて1$15px
いますが、機能していません...
これが尋ねられてからしばらく経ちましたが、同様の問題に遭遇した他の人にとって、これはうまくいく簡単な答えです.
Sublime Text 2 では、次の置換文字列により、求めている結果が得られます。
1${1}5px
テキスト例:
1px
100px 1px and 100px
1px 100px 1px and 100px 1px
100px 1px and 100px1px
100px 1px and 100px
検索対象:
1(.*?)px
と置換する:
1${1}5px
結果:
15px
1005px 15px and 1005px
15px 1005px 15px and 1005px 15px
1005px 15px and 1005px15px
1005px 15px and 1005px
これは、数値グループ置換の代わりに名前付きグループ置換を使用します。この場合、数字の 1 は名前を表します。${ name }
$ number
何らかの理由で、Sublime Text 2 正規表現エンジンは、数字が番号付きグループに続く場合、置換でうまく機能しません。
$15
あなたの交換は、おそらくではなくキャプチャ グループのように見え$1
ます。私は sublimetext2 に精通していませんが、おそらく次のように置換をエスケープする必要があります:
s/1(.*?)px/1${1}5px/
これは確かに、使用している構文と非常によく似た構文のように見える perl の正しい構文です。
Sublime Text 2 はバックスラッシュを使用してキャプチャ グループを参照するため、\1
代わりに$1
検索対象:(1\d*) ?px
と置換する:\15px
キャプチャ グループ 15 がないため、これは正常に機能します。