1
我有一個看起來像這樣的製表符分隔文件:Perl的 - 無法使用正則表達式來代替1名在TSV文件
Sample Beta Actin GAPDH Claudin E-Cadherin
1 1840.055 893.08 1 6387.773
2 1862.971 48.335 1 6373.066
3 991.598 1 2434.882 1
我想用一個字母「X來代替「1」的每一個實例「;但我不想影響比包含數字1更長的數字。我嘗試過:
open (FILE, $file);
while (<FILE>) {
my $line = $_;
chomp $line;
my @c = split('\t', $line);
foreach (@c) {
$_ =~ s/^1$/X/g;
}
print $line, "\n";
}
但是,這不會更改單個字符。爲什麼這個解決方案沒有工作?如果您可以提出適用於我的問題的解決方案,我會提高您的答案,但我更感興趣的是理解爲什麼我發佈的代碼失敗。