2015-06-18 57 views
0

我有一個perl腳本,用於比較兩個文件中的文本。大多數日子裏的文件應該完全一樣,但如果由於某種原因文件中的某些文本發生更改,我希望腳本打印出與其他文件夾中不完全相同的所有文本。我希望它能打印出文件之間的差異。在Perl中打印所有不匹配的項目

if($atext !~m/$btext/){ 
print $1; 
} 

這就是我現在有,但它給我的錯誤,「在等等等等使用未初始化值$ 1打印」。

+8

你爲什麼不運行'diff'? – choroba

+0

如果在正則表達式 – arco444

+1

['$ 1'](https://metacpan.org/pod/perlvar#Variables-related-to-regular-expressions)沒有捕獲組,只有在那裏設置捕獲組時才能使用'$ 1'是正則表達式中的捕獲組。無論如何,當*不匹配時,您不會期望設置「$ 1」。 – mob

回答

1

如何使用類似Text::Diff而不是自己構建?

有關如何不使用捕獲組設置$ 1的說明,請參閱註釋。

相關問題