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

使用Regex移除HTML标签后,如何为字符串添加换行分隔?

问题:处理HTML标签后实现换行显示

原HTML内容:

Air Receiver <br /> Pressure Washer <br />Vehicle Lift<br />100T Crane Attachment<br />

当前使用的C#代码(运行正常):

ViewBag.PlantDetails =
    Regex.Replace(QuoteDetails.PlantDetails, @"<[^>]+>|&nbsp;", " ").Trim();

当前执行结果:

Air Receiver Pressure Washer Vehicle Lift 100T Crane Attachment

需求:希望处理后得到换行格式的字符串,效果如下:

Air Receiver
Pressure Washer
Vehicle Lift
100T Crane Attachment

解决方案

分两步处理,先保留<br />对应的换行结构,再清理其他冗余内容:

// 第一步:将所有<br>系列标签替换为系统换行符
var processedText = Regex.Replace(QuoteDetails.PlantDetails, @"<br\s*/?>", Environment.NewLine);

// 第二步:移除其他HTML标签和&nbsp;,替换为空格后清理首尾空格
processedText = Regex.Replace(processedText, @"<[^>]+>|&nbsp;", " ").Trim();

// 可选:清理换行前后的多余空格,避免每行出现前置/后置空格
processedText = Regex.Replace(processedText, @"\s+" + Environment.NewLine, Environment.NewLine);
processedText = Regex.Replace(processedText, Environment.NewLine + @"\s+", Environment.NewLine);

ViewBag.PlantDetails = processedText;

说明

  1. 优先匹配换行标签:正则@"<br\s*/?>"可以覆盖<br>、<br/>、<br />等所有常见换行标签写法,用Environment.NewLine保证跨平台的换行兼容性。
  2. 清理冗余内容:在保留换行结构的基础上,移除其他HTML标签和&nbsp;,避免内容粘连。
  3. 优化换行格式:最后清理换行前后的多余空格,确保每一行内容整洁。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 06:24:22