我很努力地在匹配字符串之前插入一個換行符,該換行符由一個由2或3個字符(字母數字)開頭並以另一個句點結尾的句點組成。如果可能的話,這需要作用於整個文件的單個語句。Perl正則表達式在模式匹配之前全局插入換行符
喜歡的東西(?):
$contents =~ s/\.{2,3}\./\n\.<what goes here?>\./g;
具體來說,我處理在2步處理的許多目錄記錄文件。 第1步:刪除文件中的所有回車。 第2步:查找文本字符串,如.AUTH。和.RE。甚至.856。並使每一個這些都成爲新行的開始。我可以用很長的一系列具體換人爲此,
$contents=~s/\.RE\./\n\.RE\./g;
$contents=~s/\.AUTH\./\n\.AUTH\./g;
$contents=~s/\.TITL\./\n\.TITL\./g;
但我的理解是,我還可以用一個語句做到這一點更有效(使用內置變量的正則表達式?)
謝謝,
託姆
的'.'字符沒有在替換字符串進行轉義。 –