正则表达式:如何在文件的第一行之前和最后一行之后插入文本

Regex: How to insert text before the first line and after the last line of file

我需要在 2000 个文件的开头添加一个 php 脚本。所以,我找到了解决方案,也许这会帮助任何人使用正则表达式来做到这一点。

首先,您必须 select 文本的第一行:^\A(.*)$

然后,像这样搜索和替换:

搜索:^\A(.*)$

替换为:ANY_TEXT \r

我使用 GrepWin 来替换大文本,而不只是一行。请记住,\r 或 \n 用于添加新行。如果您不想使用其中一个,您可以在第一行的开头添加任何内容,而无需 space 另一行 ANY_TEXT

另一种方法:

搜索:\A(?-s){1}(?s)(.*)

替换为:ANY_TEXT \r

另一种方式:

搜索:(?s)(.*)

替换为:ANYTHING \n

现在,如果您想在第一行末尾添加一些内容:

搜索:^\A(.*)\K$

替换为:ANY_WORDS

最后,如果您想在文本的最后一行之后添加一些内容:

搜索:^(.*)$\z

替换为: \nANY_WORDS

^\A(.*)$ 在所有情况下都不适合我,因为有时我在文本开头有类似 = 的内容。 ^(.*)$ 帮忙收拾东西