2017-01-25 62 views
1

這似乎很容易,但我沒有設法這樣做。視覺工作室中的正則表達式替換2015

smartPtr(className) =>smartPtr<className>

+0

它對我來說工作得很好! –

+1

使用文字字符串替換,取消激活正則表達式模式。 –

+0

@WiktorStribiżew需要在整個解決方案中進行更換。它有超過100個包裝有smartPtr的類() – user2391685

回答

1

在Visual Studio中,使搜索和替換正則表達式模式使用基於正則表達式的搜索和第一替換。

然後,你需要逃跑的括號匹配字面(),並使用[^)]+匹配比),而不是包裹着的className(或\w+匹配1+字母/數字/ _)等1+人物捕獲組(一對非轉義括號):

smartPtr\(([^)]+)\) 

smartPtr\((\w+)\) 

和repla與smartPtr<$1>

查看.NET regex demo online

注意:要匹配smartPtr()作爲一個整體的話,你可能會在前面加上一個單詞邊界,\bsmartPtr\((\w+)\),甚至是空白的邊界,(?<!\S)smartPtr\((\w+)\)格局。

+0

className是一個通用術語。我必須在解決方案中替換smartPtr(classA),smartPtr(classB)等 – user2391685