在弦的末端移除或修剪回车

时间:2010-12-14 03:50:41

标签: c# regex trim

  

可能重复:
  Removing carriage return and new-line from the end of a string in c#

如何删除字符串末尾的回车符。 我已经谷歌了,但我找不到我需要的代码。

这是我目前的代码:

返回s.Replace(“\ n”,“”)。替换(“\ r”,“”)。替换(“\ r \ n”,“”)。Trim();

但当然所有旧角色的出现都会被替换。

我试过这些:

公共字符串修剪(字符串s) {

string[] whiteSpace = {"\r", "\n", "\r\n"};

foreach(string ws in whiteSpace)
{
    if (s.EndsWith(ws))
    {
        s = s.Substring(0, s.Length - 1);
    }
}
return s;

}

但是对我不起作用,也许我会遗漏某些内容或者我的代码出错了

我也尝试使用正则表达式,但我无法得到我需要的东西。

我从word文档中获取字符串,然后将其转移到另一个文档。

我会感激任何帮助.Tnx

2 个答案:

答案 0 :(得分:2)

您好我在以下链接中找到了解决方案。因此,应归功于该作者。

Example

然而,我已经对其进行了定制以提高演示能力。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication4
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            String s = "ABCDE\r\n" + "FGHIJ";
            MessageBox.Show(s);            
            MessageBox.Show(RemoveAndNewlineLineFeed(s));            
        }

        string RemoveAndNewlineLineFeed(string s)
        {
            String[] lf = { "\r", "\n" }; 
            return String.Join("",s.Split(lf,StringSplitOptions.RemoveEmptyEntries));             
        }
    }
}

检查一下。

答案 1 :(得分:1)