2012-07-07 64 views
1

我有一個數據,如下面的文件test交換柱使用的sed

2233:Jorge Bill :56Blue Pkwy :99999 
1111:Mary Smith :33Red Street :123456 

我想用SED和分組交換的姓氏和名字,但我的代碼不能正常工作!

sed 's/\([^:]*:\)\([^' ']*' '\)\([^:]*\)/\1\3\2' test 

你知道什麼是錯的嗎?

回答

2

你忘了在正則表達式中跳過單引號,還需要在替換字符串的末尾添加一個正斜槓。我擺脫了單引號,在這裏。

sed 's/\([^:]*:\)\([^ ]* \)\([^:]*\)/\1\3\2/' test