使用 tr 转义正斜杠
Escaping forward slashes with tr
我有一个包含 $var = "/var/run/hello.pid"
.
的变量
为了替换它,我需要将那些 /
更改为 \/
。我试图像这样使用 Perl tr
选项:
$var =~ tr/\//\\//;
但它只需要第一个 \
,最后是 $var = \var\run\hello.pid
。
我期待的结果是:$var = \/var\/run\/hello.pid
我怎样才能用 Perl 实现它? $var
变量可以与那些 /
随机生成(这意味着它不是静态变量)。
tr
逐字翻译。使用
$var =~ s/\//\\//g;
请注意,Perl 允许您更改分隔符以提高可读性。
$var =~ s{/}{\/}g;
我有一个包含 $var = "/var/run/hello.pid"
.
为了替换它,我需要将那些 /
更改为 \/
。我试图像这样使用 Perl tr
选项:
$var =~ tr/\//\\//;
但它只需要第一个 \
,最后是 $var = \var\run\hello.pid
。
我期待的结果是:$var = \/var\/run\/hello.pid
我怎样才能用 Perl 实现它? $var
变量可以与那些 /
随机生成(这意味着它不是静态变量)。
tr
逐字翻译。使用
$var =~ s/\//\\//g;
请注意,Perl 允许您更改分隔符以提高可读性。
$var =~ s{/}{\/}g;