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