0

我已经对 pdf 图像进行了 OCR 并提取了文本。由于某种原因,OCR 已将单个空格转换为双回车换行。

例如。

"\r\n\r\n"

以下不起作用,因为我认为我的 4 个字符并不是真正的搅拌,而是 4 个不可打印的字符。

DocumentData = DocumentData.Replace(@"\r\n\r\n", "");

我只想在它们一起出现时用空格替换这 4 个不可打印的字符。

怎么能不费吹灰之力就做到这一点。

4

3 回答 3

4

问题是“@”的使用。通过在文本前面加上它,转义将被忽略。只需使用 -

DocumentData = DocumentData.Replace("\r\n\r\n", " ");
于 2016-02-25T06:32:18.320 回答
2

这是你想要的吗?

DocumentData = DocumentData.Replace("\r\n\r\n", " "); // <-- change "" to " ", remove @ char
于 2016-02-25T06:30:31.117 回答
0

如果您想确保您(或发件人)在哪个系统上运行并不重要,并且您将始终捕获我将使用的不可打印的内容Regular Expressions

DocumentData = Regex.Replace(DocumentData, @"\r\n?|\n|\r|\s+", " ");

编辑:使表达式更加健壮,并检查是否有多余的空格将它们替换为单个空格,这将避免替换后的间距过大,因此它特定于这个问题。我的错。

于 2016-02-25T06:54:28.997 回答