Visual Studio正则表达式替换

时间:2012-08-06 08:39:37

标签: c++

如果以前曾问过这个问题,我很抱歉,但在这里找不到合适的答案。 我需要一些Visual Studio正则表达式的帮助来修改源代码。 我有源代码从文件加载纹理。我有很多像这样的行。

D3DXCreateTextureFromFileA(pDevice , chFileName , &pTexture) ;
D3DXCreateTextureFromFileA(pDevice , pAttrib->Value() , &pd3dTexture) ;

我需要定义一个常量并基于它来从自定义格式加载纹理。 我想要这个

   D3DXCreateTextureFromFileA(pDevice , chFileName , &pTexture) ;

成为这个

 #ifdef LOAD_TEXTURES_FROM_CF

    CreateTextureFromResourceFile((pDevice , chFileName , &pTexture) ;

 #else

    D3DXCreateTextureFromFileA(pDevice , chFileName , &pTexture) ;

 #endif 

如何使用Visual Studio正则表达式实现此目的? 提前谢谢。

1 个答案:

答案 0 :(得分:2)

不需要正则表达式替换(我甚至建议不要这样做)。不要复制新代码,只需创建另一个宏:

#ifdef LOAD_TEXTURES_FROM_CF
#define CreateTextureFromFile(a, b, c) CreateTextureFromResourceFile((a), (b), (c))
#else
#define CreateTextureFromFile(a, b, c) D3DXCreateTextureFromFileA((a), (b), (c))
#endif

然后将D3DXCreateTextureFromFileA的所有先前出现替换为CreateTextureFromFile,您应该没问题。