2013-03-19 31 views
0

我有上百個看起來像下面的那些行的文件。我正則表達式技能是不夠的,把工作做好。 我試圖做到這一點取代在記事本++與搜索和使用正則表達式替換,還試圖(和失敗)在vim。正則表達式搜索和替換與分組

這是我的正則表達式

public string (^[A-Z]*[\S]) { get; set }

所以我要讓第一線看起來像這樣

Foretag public string Foretag { get; set; }

以下

和所有線路它匹配我的搜索術語,是TYPE = 「字符串」

Foretag Type="string" 
DagboksDatum Type="DateTime" 
Byggdag Type="int" 
PaborjadeArbeten Type="string" 
FardigaArbeten Type="string" 

回答

5

在Vim中:

:%s/\(\w*\).*string.*/\1 public string \1 { get; set } 
+2

+1,它會更好,如果加上'類型=''之前string'。當然這個命令行當前的例子沒有問題。另外我不明白,如果用vim標記問題,爲什麼其他標記'notepad ++'仍然是必要的?^_ ^只是開玩笑......很好的答案! – Kent 2013-03-19 11:24:53

+1

謝謝。實際上,我想增加一個更通用和更牢固的解決方案(擁有更多的捕獲組和不同的量詞),但我決定不這樣做,並且針對問題中的樣本保留特定的解決方案。 – romainl 2013-03-19 12:46:00

3

你會做這樣的核電站:

查找:

​​ :

^(\w+) Type="(\w+)" 

與更換

+0

謝謝的作品! – Kolla 2013-03-19 10:49:13