5

多数の識別子のグループを小文字から大文字に変更したいと考えています。で始まる一意の識別子が多数 (数百程度) 含まれるファイルがありますq_。この一致を定義する正規表現を作成しました。コマンド(q_\w*)を適用して、~すべて大文字にします (現在は小文字です)。VIM にはこれ以上の機能があると思いますが、私のスキルはまだありません。

4

2 に答える 2

6

識別子全体を大文字にする場合は、ファイル内の識別子ごとに、次の代替コマンドを使用します。

%s/q_\w\+/\U&/g

ここでの秘訣は&、一致全体を参照する置換パターンにあります。q_identifier1これは、たとえば。に置き換えQ_IDENTIFIER1ます。

を大文字にするだけの場合はq、次を使用できます。

%s/q_\(\w\+\)/Q_\1/g

q_identifier1これで、次のように変更されます。Q_identifier1

を除くすべてを大文字にする場合はq_、次を使用します。

%s/q_\(\w\+\)/q_\U\1/g

q_identifier1これで、次のように変更されます。q_IDENTIFIER1

于 2012-10-03T19:10:11.373 に答える
0

この目的でマクロを使用することもできます。

  • パターンを検索:/q_\w*
  • マクロの記録を開始します。qq
  • 大文字にして次を検索:llve~n
  • マクロの記録を停止します。q
  • 必要に応じて繰り返します:666@q

wrapscanしかし、それ以上何もしないと、ラップして小文字に戻ります(または、ignorecase一時的にオフにすることもできます)。

于 2012-10-03T21:36:40.703 に答える