我需要以与Perl相同的方式在字符串中插入\x{}
(宽十六进制字符串)。我的代码中的双重评估让我怀疑它是最好的解决方案。
s/(\\x\{[a-fA-F0-9]+\})/'"'.$1.'"'/ee;
# or
s
/( \\x \{ [a-fA-F0-9]+ \} )
/ '"' . $1 . '"'
/xee;
是否有更简单,更易读的方式?
例如,上面的正则表达式将字符串“Spa \ x {df}”更改为“Spaß”。
答案 0 :(得分:4)
这只使用一个e
:
s/\\x\{([A-Fa-f0-9]+)\}/chr hex $1/eg;