首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在C#中裁剪字符串换行符的最简单方法是什么?

在C#中裁剪字符串换行符的最简单方法是什么?
EN

Stack Overflow用户
提问于 2009-06-24 12:22:43
回答 10查看 107.8K关注 0票数 130

我希望确保_content不会以NewLine字符结尾:

代码语言:javascript
复制
_content = sb.ToString().Trim(new char[] { Environment.NewLine });

但是上述代码的不能用于,因为Trim似乎没有字符串集合的重载参数,只有字符。

从字符串末尾删除Enivronment.Newline的最简单的一行程序是什么?

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2009-06-24 12:30:18

下面的方法对我很有效。

代码语言:javascript
复制
sb.ToString().TrimEnd( '\r', '\n' );

代码语言:javascript
复制
sb.ToString().TrimEnd( Environment.NewLine.ToCharArray());
票数 286
EN

Stack Overflow用户

发布于 2013-05-07 02:44:08

.Trim()为我删除了\r\n (使用.NET 4.0)。

票数 43
EN

Stack Overflow用户

发布于 2009-06-24 12:27:35

这样如何:

代码语言:javascript
复制
public static string TrimNewLines(string text)
{
    while (text.EndsWith(Environment.NewLine))
    {
        text = text.Substring(0, text.Length - Environment.NewLine.Length);
    }
    return text;
}

如果有多个换行符,效率会有点低,但它可以工作。

或者,如果您不介意修剪(比方说) "\r\r\r\r""\n\n\n\n"而不仅仅是"\r\n\r\n\r\n"

代码语言:javascript
复制
// No need to create a new array each time
private static readonly char[] NewLineChars = Environment.NewLine.ToCharArray();

public static string TrimNewLines(string text)
{
    return text.TrimEnd(NewLineChars);
}
票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1038031

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档