如何从每行开头和结尾的字符串中的行中删除空格?

时间:2014-06-16 08:42:09

标签: c# .net winforms

我有一个名为combindedString的字符串变量; 它的内容格式如下:

שרת המשפטים לבני: ''לא חשוב אם החטופים מתל אביב או מטלמון''
דווח במקור בתאריך: 16.06.14  שעה : 11:04

מורעלים לשנאה: ילדות פלסטיניות חוגגות ''שלוש גלעד שליט''
דווח במקור בתאריך: 16.06.14  שעה : 11:36

לידיעתכם: בדקות האחרונות מסתובבות שמועות וואטסאפ שקריות נוספות
דווח במקור בתאריך: 16.06.14  שעה : 11:36

ח''כ רגב: אם אסירים ביטחוניים מבקשים למות - יש לאפשר להם
דווח במקור בתאריך: 16.06.14  שעה : 11:32


      3 נערים נחטפו ע״י חמאס - אשכול מרוכז ומתעדכן (#12)
דווח במקור בתאריך: 16.06.14  שעה : 00:37

כל עובד בטאבו יקבל
 30 אלף שקל בגלל הכנסת מערכת מחשוב חדשה
דווח במקור בתאריך: 16.06.14  שעה : 07:46

סרילנקה: אספסוף בודהיסטי תקף מוסלמים, 3 הרוגים, 80 פצועים, עוצר
דווח במקור בתאריך: 16.06.14  שעה : 10:42

字符串中有这样的部分:

ח''כ רגב: אם אסירים ביטחוניים מבקשים למות - יש לאפשר להם
    דווח במקור בתאריך: 16.06.14  שעה : 11:32


          3 נערים נחטפו ע״י חמאס - אשכול מרוכז ומתעדכן (#12)
    דווח במקור בתאריך: 16.06.14  שעה : 00:37

在日期和时间与下一个文本行之间有多个空格,下一个文本行看起来就像是开头的空格:

      3 נערים נחטפו ע״י חמאס - אשכול מרוכז ומתעדכן (#12)

我尝试在combindedString上使用trim但它没有帮助或改变任何东西。

combindedString应该是这样的:

שרת המשפטים לבני: ''לא חשוב אם החטופים מתל אביב או מטלמון''
דווח במקור בתאריך: 16.06.14  שעה : 11:04

מורעלים לשנאה: ילדות פלסטיניות חוגגות ''שלוש גלעד שליט''
דווח במקור בתאריך: 16.06.14  שעה : 11:36

לידיעתכם: בדקות האחרונות מסתובבות שמועות וואטסאפ שקריות נוספות
דווח במקור בתאריך: 16.06.14  שעה : 11:36

在每两行之间(文本和时间及日期)一个空/空行。

这就是我试图做的事情:

for (int i = 0; i < combindedString.Length; i++)
            {
                combindedString.Trim(combindedString[i]);
            }
            scroller1.TextToScroll = combindedString;

但它没有解决它。我该如何解决?

4 个答案:

答案 0 :(得分:2)

字符串是不可变的,即在创建对象后无法更改字符串对象的内容,尽管语法使其看起来好像可以执行此操作。

所以

string[] ss = combindedString.Split(new string[] {"\n", "\r\n"}, 
                              StringSplitOptions.RemoveEmptyEntries);

完整代码

for (int i = 0; i < ss.Length; i++)
    ss[i] = ss[i].Trim();

combindedString = String.Join("\n", ss);
scroller1.TextToScroll = combindedString;

答案 1 :(得分:0)

使用Trim()方法将前导和尾随空格删除为字符串

答案 2 :(得分:0)

您可以使用Regex

combindedString = Regex.Replace(combindedString, "\n( *)?", "\n").Trim();

答案 3 :(得分:0)

您可以使用Regex将任意多个空格替换为一个。它适用于任何位置的单词:

Regex regex = new Regex(@"[ ]{2,}", RegexOptions.None);
combindedString = regex.Replace(combindedString, @" ");
scroller1.TextToScroll = combindedString.Trim();