在Perl中刪除角色,我有一個變量:從Perl的正則表達式
$var = 1M;
但我想$var
是唯一1
。我不想在$var
的M
。所以我在Perl中使用正則表達式如下:
$var = s/M/;
但它不工作。
請幫忙。提前致謝。
在Perl中刪除角色,我有一個變量:從Perl的正則表達式
$var = 1M;
但我想$var
是唯一1
。我不想在$var
的M
。所以我在Perl中使用正則表達式如下:
$var = s/M/;
但它不工作。
請幫忙。提前致謝。
忘記添加替換零件。替代代碼的語法是$variable =~ s/regex/replacement-string/modifier
。如果您希望替換全局發生,請在下面的代碼中添加g
修飾符。
use strict;
use warnings;
my $var = "1M";
$var =~ s/M//;
print "$var\n";
輸出:
1
$var=~s/M//g;
這應該工作。 我建議先閱讀一些很好的教程。
您使用錯誤的語法進行替換。嘗試使用嚴格;並使用警告;
use strict;
use warnings;
my $var = "1M";
$var =~ s/M//;
print $var;
Srry我忘了波浪號〜現在已經修改了它...感謝info @mpapec – Praveen 2014-11-06 07:45:51
'$ var = s/M /'和'$ var = 1M'是無效的Perl表達式(裸字除外)。如果這就是你真的在你的代碼中寫的,那就是其中一個問題。如果不是,請修復它。提問時發佈近似代碼是不小心的。 – TLP 2014-11-06 08:23:29
'$ var = s/M //'是'$ var = $ _ =〜s/M //'的縮寫。 – TLP 2014-11-06 08:25:00