如何在我的字符串中添加\前面的$?

Tak*_*kun 2 regex perl

my $cmd = 'this is a "testin$g" ok';
print Dumper($cmd);
Run Code Online (Sandbox Code Playgroud)

$ VAR1 ='这是一个"testin $ g"ok';

my $cmd = 'this is a "testin$g" ok';
$cmd =~ s/\$/\\\$/;
print Dumper($cmd);
Run Code Online (Sandbox Code Playgroud)

$ VAR1 ='这是一个"testin \\ $ g"ok';

我试图得到一个看起来像这样的字符串:'这是一个"testin\$ g"ok'.在$前面的单个\.但即使我用\ $替换$,它也会以两个代替.

foi*_*ibs 6

你的正则表达式和字符串都是正确的.Data :: Dumper转义字符本身.

只需使用即可打印简单的字符串

print $cmd."\n";
Run Code Online (Sandbox Code Playgroud)

而且你会看到它没问题.

另外,试试看看Dumper如何逃脱角色

print Dumper('this is a "testin\$g" ok');
Run Code Online (Sandbox Code Playgroud)