[英]Search and replace in Visual Studio
在Visual Studio中,當我在選擇中進行搜索時,我想使用正則表達式替換每行匹配項的第一個實例(或第二個,第三個等)。 我該怎么做?
搜索並替換
foo1 = foo1;
foo2 = foo2;
...
foo20 = foo20;
進入以下。
foo1 = bar1;
foo2 = bar2;
...
foo20 = bar20;
在Visual Studio 2012中,捕獲組和反向引用的用法與C#中的用法相同。 您可以使用通用括號捕獲它們,並使用$ 0,$ 1等向后引用它們。希望對您有所幫助!
請注意,語法$1
用於查找替換,而\\1
用於搜索字符串中的向后引用。
在Visual Studio 2010和更早版本中 ,將正則表達式與反向引用一起使用
Visual Studio的正則表達式與我所學的完全不同。 花了我一些時間找出正確的答案。
搜索
{foo}{:d+} = \1\2
用。。。來代替
\1\2 = bar\2
通過使用大括號{foo}
進行tagging
來完成后向引用。 :d+
與\\d+
相同
在Visual Studio 2019查找/替換中如此簡單。 我需要將FORTRAN IO格式的字符串替換為C ++格式,並使用子表達式和正則表達式的編號。
示例:找到:“ f9.8”,“ f18.3”,並用%9.8f,%18.3f替換
reg exp:查找=(f)(\\ d +。\\ d +)替換=%$ 2f
我也可以不用正則表達式來完成:
用= bar
替換= foo
。
如果需要一個正則表達式,則可以使用:
foo(\d*) = foo(\d*);
用。。。來代替:
foo\1 = bar\2;
如果您的變量更大:
Regex.Replace(input, @"(?<=\= )[^;0-9]*(?=[0-9]*;)", replacewith);
此搜索=
和(anynumber);
並在兩者之間替換。
編輯:該數字是可選的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.