2017-04-04 86 views
0

我有一个变量值E.1.1.1,我想E111存储在不同的变量中。Perl中变量的正则表达式

$var1 = "E.1.1.1"; 
$var1 =~ s/\.//g; 

上面的代码更改了$var1变量的值。我想尝试如下。

$var2 = s/\.//g $var1; 

建议该怎么做。我是Perl新手。

+1

尝试:'(我的$ VAR2 = $ VAR1)= 382 4 /\.// g'或使用'r'修改 –

回答

2

像这样的东西应该工作:

(my $var2 = $var1) =~ s/\.//g; 
+1

在新的perls上:'my $ var2 = $ var1 =〜s /\.// gr;' – Sobrique

2
my $var2 = $var1; 
$var2 =~ s/\.//g; 

(my $var2 = $var1) =~ s/\.//g; 

my $var2 = $var1 =~ s/\.//gr; # 5.14+ 
0

你已经使用了s///普遍的答案。

对于这个特定的任务,从字符串去除.,你也可以使用y(化名tr)。

(my $var2 = $var1) =~ y/.//d; 

my $var2 = $var1 =~ y/.//dr; #the /r needs 5.14+ 

更多信息:perlop - Quote-Like Operators