2014-04-09 86 views
0

我想要放入每個字符串的大寫字母E infront。 我使用sed很重要。sed:單個字符串之間的字符串

這樣

(260,'\"$40 a Day\"',2002,'Color','USA','','2000100002',131,6.1,'2002-04-24') 

成爲

(260,E'\"$40 a Day\"',2002,E'Color',E'USA',E'',E'2000100002',131,6.1,E'2002-04-24') 

我已經試過

sed "s/'.*'/E&/g" 

但只把第一個字符串的E-盈!

祺金

+0

我看你的字符串可以包含轉義雙引號。他們是否保證不包含逃脫的單引號? – John1024

回答

1

*貪婪匹配從第一單引號匹配一路到最後一個。試試這個:

sed "s/'[^']*'/E&/g" 

由於John1024警告以上,如果允許轉義單引號,這將不起作用。

1

另一個sed

sed "s/,'/,E'/g" 
相關問題