我使用了Web搜索,发现了类似标题的问题。Perls /// g中发生了多少次替换?并尝试使用它来打印号码,但未能成功。
我的初始代码是
perl -0777 -i.original -pe 's-\r\n-\n-igs' test.txt
Run Code Online (Sandbox Code Playgroud)
当我尝试
perl -0777 -i.original -pe "$c=s-\r\n-\n-igs;say qq'$c'" test.txt
Run Code Online (Sandbox Code Playgroud)
当我尝试时,我一无所有-没有输出,也没有替代品
perl -0777 -i.original -pe '$c=s-\r\n-\n-igs;print qq($c\n)' test.txt
Run Code Online (Sandbox Code Playgroud)
(print类似于我以前使用过的其他单行代码),我在标准输出中得到了空字符串,但是454847将其添加为文件的开头(以及适当的替换)。
我了解=~在我的情况下不需要(Perl中的=〜做什么?),所以我的代码有什么问题?如何打印已更换的数量?