私は、8000個程度のソースコードファイルでいくつかの変数を他の形式に置き換えることができる小さなユーティリティを作成しようとしています。意図的にハイフンを無視する
たとえば、次のような種類のソースコードがProgress4GLで書かれています。 注:Progress4GLは、変数名にハイフンを使用することができます:私は正規表現(crudefn.segment-id)(\[)
を使用する場合
where x-crudefn.segment-id[5] =crudefn.segment-id[v-idx]
が、私は正確にcrudefn.segment-id
ののoccuranceを見つける必要があり、それは等号の両方の部分でそれを見つけました。
この場合、は別の変数ですが、置き換えたくありません。
私は唯一の変数crudefn.segment-id
私は正規表現[^\-](crudefn.segment-id)(\[)
を使用して、ハイフンを無視しようとすると、それはまた、私はしたくない試合結果("=crudefn.segment-id[")
、中に等号が含まを交換したいです。いくつかのケースでは、ソースコードは次のようである:
where x-crudefn.segment-id[5] =crudefn.segment-id[v-idx]
や他のいくつかの例では、このようなものだ:
where x-crudefn.segment-id[5] = a + crudefn.segment-id[v-idx]
'[試してみてください(< - ?!)\ bcrudefn \ .segment-IDの\の['](https://regex101.com/r/qQ6zZ8/2) –