You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用正则表达式去除字符串首尾的换行符、空格等指定字符?

字符串首尾指定字符清理实现方案

方案1:使用.NET内置Trim()方法(推荐)

这个方法无需引入正则库,逻辑简单直观,且不会误删中间字符,完全匹配需求:

// 原始字符串
string rawContent = "\r\n \nTitle\r\nText on the next row\r\n\r\nSignature\r\n";
// 指定要从首尾移除的字符集合:回车、换行、空格
char[] charsToTrim = {'\r', '\n', ' '};
// 执行清理
string result = rawContent.Trim(charsToTrim);

Trim()方法的特性就是仅移除字符串开头和结尾匹配的指定字符,中间出现的同类字符会完整保留。

方案2:正则实现

如果你必须使用正则完成,可使用如下规则,注意不要加RegexOptions.Multiline参数,避免误匹配每一行的首尾:

using System.Text.RegularExpressions;

string rawContent = "\r\n \nTitle\r\nText on the next row\r\n\r\nSignature\r\n";
// 正则规则:匹配整个字符串开头/结尾的所有回车、换行、空格
Regex trimReg = new Regex(@"^[\r\n ]+|[\r\n ]+$");
string result = trimReg.Replace(rawContent, string.Empty);

原正则失效原因

你之前编写的规则仅匹配了开头的连续\r\n,漏匹配了开头的空格、单独\n,也没有覆盖结尾需要清理的字符,因此无法满足需求。

内容的提问来源于stack exchange,提问作者vr552

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 21:39:03