我很努力地在匹配字符串之前插入一个换行符,该换行符由一个由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;
但我的理解是,我还可以用一个语句做到这一点更有效(使用内置变量的正则表达式?)
谢谢,
托姆
的'.'字符没有在替换字符串进行转义。 –