我想清理一些输入并用可接受的输入替换几个字符,例如丹麦'å
'与'aa
'。在sed中的正则表达式在一个语句中的多个替换
这很容易用几种语句完成,例如, /æ/ae/
/å/aa/
,/ø/oe/
,但由于工具的限制,我希望能够在单个正则表达式中执行此操作。
我能赶上所有的相关案例(/[(æ)(ø)(å)(Æ)(Ø)(Å)]/
),但我,因为我希望它(但可能完全按预期)更换不工作:
$ temp="RødgrØd med flæsk"
$ echo $temp
RødgrØd med flæsk
$ echo $temp | sed 's/[(æ)(ø)(å)(Æ)(Ø)(Å)]/(ae)(oe)(aa)(Ae)(Oe)(Aa)/g'
R(ae)(oe)(aa)(Ae)(Oe)(Aa)dgr(ae)(oe)(aa)(Ae)(Oe)(Aa)d med fl(ae)(oe)(aa)(Ae)(Oe)(Aa)sk
(第一回声线,以表明它是不是一个编码问题)
正如一边,工具的问题是,我想在Sublime Text 2 snippet也使用相同的正则表达式。
任何人都能看出我的正则表达式有什么问题吗?
在此先感谢。
Blarg,当然。我应该更强调Sublime Text snippet的用法,但这是对主要问题的完全正确答案。 – Jan
@Jan,谢谢。我不认为你可以编写一个正则表达式替换几个可能的匹配中的一个,特别是不用'sed'。当然,Blarg, –