正则表达式截断文本行(替换为空)

时间:2014-01-14 16:45:06

标签: .net regex

我有一个基于.NET的工具,允许我对文件中的行进行正则表达式替换,但不是很多其他选项(我说这是因为我完全知道这不是理想的工具......这就是我在这种情况下必须要做的事情。)

我需要为每行截断95个字符的文件。每行都有字母数字和空格。我可以选择输入匹配的表达式和替换表达式。我希望我将替换表达式替换为\r\n

我可以使用什么来匹配表达式来选择前95个字符后的所有内容?

2 个答案:

答案 0 :(得分:5)

你可以使用substring来剪切字符串,但如果你想要一个正则表达式,那么就像:

^.{,95}

匹配字符串中的前95个字符串(如果字符串更短则更少)。如果您想限制匹配的字符类型,请将.替换为其他内容。

要获得前95后的字符,您可以执行以下操作:

^.{,95}(.*)

现在额外的字符将出现在捕获组中。

使用后面的视图可以执行以下操作:

(?<=.{95})(.*)

仅匹配超过95个字符的字符串。

答案 1 :(得分:3)

([\s a-z A-Z 0-9]{1,95})(.*)

替换为:

\1