在perl中使用字符替换

时间:2013-08-27 07:10:56

标签: perl sed

您好我正在尝试从变量s中删除“:”。

我做了以下程序,但它无法正常工作

$s="2:2:2:2:2";
$v=$(sed 's/://g' <<< $s);
print $v;

任何解决方案 感谢

1 个答案:

答案 0 :(得分:9)

首先:什么是$s

如果它应该包含字符串,则必须添加引号。

下一步:$(...)是shell编程,而不是perl。

然后就不需要运行shell脚本来替换字符了。你可以在perl中做到这一点。

$s = "2:2:2:2:2";
$s =~ s/://g;
print $s;

如果您因为某种原因确实想要使用 sed ,并且想要编写执行它的perl脚本,那么您必须这样写:

#!/usr/bin/env perl
$s="2:2:2:2:2";
$v=`sed 's/://g' <<< $s`;
print $v;