对于许多行,在行上的任何行之前插入字符

时间:2010-06-29 20:39:46

标签: windows regex text

我一直在寻找正则表达式尝试这样做,但我能做的最多就是用^来找到行的开头,但不能替换它。

然后我可以找到要替换的行上的第一个字符,但不能以保持原样的方式完成。

不幸的是,由于我在Windows机器上,因此我无法访问像cut这样的工具...所以有没有办法用regexp做我想做的事情?

3 个答案:

答案 0 :(得分:1)

您是否尝试使用要放在每行开头的文本替换正则表达式^?如果你希望m匹配输入中每一行的开头而不是第一行,那么你应该使用多线选项(在一些正则表达方言中也称为^)。

string s = "test test\ntest2 test2";
s = Regex.Replace(s, "^", "foo", RegexOptions.Multiline);
Console.WriteLine(s);

结果:

footest test
footest2 test2

答案 1 :(得分:1)

使用notepad++。它提供了一种记录一系列动作的方法,然后可以对文件中的所有行重复这些动作。

答案 2 :(得分:1)

我曾经在大型机上编程,习惯了SPF面板。我很高兴在Command Technology找到同一编辑器的Windows版本。让这样的问题变得简单。您可以使用表达式排除或包含行,然后仅对排除或包含的行应用变换,并在列边界内执行变换。您甚至可以获取一组线的内容并完全覆盖另一组线的内容或在列边界内,这使得很容易为变量和类似任务生成值的大量分配。我使用Notepad ++进行大多数工作,但保留一份SPFSE用于特殊目的的编辑。它并不便宜,但一旦你弄清楚如何使用它,它就能节省时间。