你如何使用正则表达式乘以10?

ton*_*ian 1 regex perl

我有一个问题可以等于十倍数的问题.第一种方法是:

   perl -pi -e 's/(\d+)/\1 0/g' myfile.txt
Run Code Online (Sandbox Code Playgroud)

但是这会引入额外的空间而我不能放\ 10因为这样的组不存在.我的解决方案是这种解决方法

   perl -pi -e 's/(\d+)/\1\l0/g' myfile.txt
Run Code Online (Sandbox Code Playgroud)

小写 0,但我敢肯定有,我是不知道的正确方法.

问候.

gee*_*aur 8

您应该使用$1表单而不是\1替换.这实际上是其中一个原因:你可以说,使用变量形式${1}0.


tch*_*ist 5

不要\1在替代的RHS上使用符号.使用$1.

通常,backrefs和八进制表示法之间存在歧义问题.或者是.现在已经解决了.

在Perl的最新版本中,当您需要明确表示反向引用时,您可以使用\g{1},当您需要明确表示八进制数时,您可以使用\o{1}.