Visual Studio 2005の検索と置換機能を使用して、すべての#include "whatever.h"
を#include <whatever.h>
に置き換えようとしています。正規表現\#include \"[a-z\.h]+\"
を使用してincludeステートメントを見つけました。しかし、私は正規表現を置換する方法を疑問に思っています。
\#include \<[a-z\.h]+\>
は機能せず、機能しません。ステートメント#include "whatever.h"
を#include <[a-z.h]+>
に置き換えます。 whatever.h
をそのまま保持するために、置換正規表現をどのようにフレーミングしますか?
バージョンの場合beforeVisual studio 2012:
これを行うと動作します:
find include "{[a-zA-Z]+\.h}"
、include <\1>
に置き換えます。
質問に最も関連する部分は、中括弧{}
および後方参照\1
:\n
検索で中括弧で示されたn番目のグループへの参照です表現。
Visual Studio 2012以降のバージョンの場合:
VS2012 .NET Frameworkで始まる正規表現が使用されます。したがって、次のようになります。
find include "([a-zA-Z]+\.h)"
、include <$1>
に置き換えます。