2013-10-07 36 views
1

我使用的是OS X,想更換如何用sed替換這個?

[self.lang getAppLanguageString:@"foo bar"] 

LocalizedString(@"foo bar", nil) 

我用sed像下面:

sed -i '' s/[self\.lang getAppLanguageString:@"([a-zA-Z]+)"]/LocalizedString(@"\1", nil)/g somefile 

,但不行,我怎麼能做到這一點?

回答

1

您已經在該模式中轉義了.,但還需要轉義[]

嘗試:

sed -i 's/\[self\.lang getAppLanguageString:@\("[^"]*"\)\]/LocalizedString(@\1, nil)/' somefile 
+0

您的代碼做工精細,非常感謝你! – bitshine