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

C# 按'>'拆分多行地址文本后拼接为单行的实现问题

解决方案

你的原有代码存在两处核心错误:

  • Split方法传入的分隔符错误,不应该传入全量文本x,应该指定分隔符为'>'
  • 拆分后没有对单个地址段做换行替换处理,直接拼接全量内容无法得到逐行的单行地址

可直接运行的实现代码

using System;
using System.IO;
using System.Linq;
using System.Text.RegularExpressions;

public class Program
{
    public static void Main()
    {
        // 替换为你的实际文件路径
        string textFilePath = @"C:\your\address\file.txt";
        string allText = File.ReadAllText(textFilePath);
        
        // 按>符号拆分,自动过滤空段、去除段首尾空白
        var addressSections = allText.Split('>', 
            StringSplitOptions.RemoveEmptyEntries | StringSplitOptions.TrimEntries);
        
        foreach (var section in addressSections)
        {
            // 替换所有换行符为空格,合并连续空格,最后处理首尾空白
            string singleLineAddr = Regex.Replace(
                section.Replace("\r", " ").Replace("\n", " "), 
                @"\s+", 
                " "
            ).Trim();
            Console.WriteLine(singleLineAddr);
        }
    }
}

代码逻辑说明

  • 拆分时用StringSplitOptions.RemoveEmptyEntries过滤掉拆分产生的空内容,StringSplitOptions.TrimEntries提前去掉每个地址段首尾的换行、空格,减少后续处理量
  • 先把地址段内所有回车、换行符统一替换为空格,再用正则合并连续的多个空格为单个,避免出现多余的空白
  • 最终输出的内容完全匹配你需要的单行地址格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 22:57:01