我有翻译为散列的字典:!如何替换一组搜索/替换对?
my %dict = { hello => 'hola', goodbye => 'adios' , ... }
(实际使用情况是不是人类语言翻译,我更换了一些其他值令牌的负载这只是举例)
如何将这些应用到字符串中?很明显,我可以循环他们,并将每个传递给s/$key/$value/
,但之后我必须引用它们,以便在搜索或替换(例如)/
时不会中断。
在PHP中有strtr($subject, $replacement_pairs_array)
- Perl中是否有类似的东西?
当''key'为'/'且'$ value'为'%'时,perl不会像php那样愚蠢's/$ key/$ value /'''''''''' – user1937198
' s/$ _/$ dict {$ _} /键%dict;'是最简单的方法。 – user1937198
@ user1937198是的,但是如果$ key是'(',那么perl会非常不高兴,请参阅下面的amon的回答:PHP的strtr不是基于正则表达式的东西,所以它不需要这个引用。 – artfulrobot