-2

我想用空白替换字符串中的换行符。如果字符串只有换行符,它应该用空白字符串替换,如果字符串有文本和换行符,它不应该用任何东西替换。

string test1 = "\r\n\r\n\r\n\r\n\r\n\r\n\r\nTestcompanyAC\r\nRegistration Number: 19871\r\n\r\n\r\nSTATEMENTS\r\n\r\nYear ended 31 December 2013\r\n\r\n"

string test2 = "\r\n\r\n\r\n\r\n\r\n\r\n\r\n"

输出: test1 和 test2=""

谢谢

4

4 回答 4

2

您可以使用^and$分隔符来匹配开头和结尾。

Regex.Replace(test2, @"^[\r\n]*$", String.Empty)
于 2013-09-14T12:26:14.567 回答
2
string test2 = "\r\n\r\n\r\n\r\n\r\n\r\n\r\n";

if (test2.All(c => c == '\n' || c == '\r'))
    test2 = "";
于 2013-09-14T12:26:18.333 回答
1

你为什么要打扰正则表达式。

这可以满足您的需要:

if (string.IsNullOrWhitespace(string_variable_here))
    string_variable_here = "";

如果您只是在寻找一个空白条目.. 以上就是您所需要的。

于 2013-09-14T12:31:22.787 回答
0

只是一个猜测,还有一些不同的尝试,但是您是否正在寻找一种方法来修剪您的字符串,以删除前导和结尾的空格?

str = str.Trim();

那应该给你

test1 = "TestcompanyAC\r\nRegistration Number: 19871\r\n\r\n\r\nSTATEMENTS\r\n\r\nYear ended 31 December 2013"
test2 = ""
于 2013-09-14T12:29:01.243 回答