C#字符串处理:英文间保留一个空格,中文间空格删除。

1.无论是网络爬虫还是解析本地文本的时候,对于取到的字符串信息往往需要格式化,

英文之间的空格需要保留下来,但是汉字之间的空格往往是多余的不需要的。

具体代码参考方法RemoveTrim

复制代码
using System;
using System.Text.RegularExpressions;

namespace ConsoleApplication1
{
    internal static class Program
    {
        /// <summary>
        /// 应用程序的主入口点。
        /// </summary>
        [STAThread]
        private static void Main()
        {
            const string constr = @"  God      is a    gril, I have 10 apples!
            上帝    是 女孩 子, 我有10  个苹果! ";
            var str1 = RemoveTrim(constr);
            Console.WriteLine(str1);
            Console.ReadKey();
        }

        /// <summary>
        /// 处理字符串:多个空格置换成一个空格,英文之间保留一个空格,汉字之间空格删除
        /// </summary>
        /// <param name="str"></param>
        /// <returns></returns>
        private static string RemoveTrim(string str)
        {
            var strArray = Regex.Split(str, " ");
            if (strArray.Length <= 2)
                return str;
            var re = string.Empty;
            var regChina = new Regex("^[^\x00-\xFF]");
            var regEnglish = new Regex("^[a-zA-Z0-9]");
            foreach (var t in strArray)
            {
                if (string.IsNullOrEmpty(t))
                    continue;
                if (regChina.IsMatch(t) || !regEnglish.IsMatch(t))
                    re = re + t;
                else
                {
                    if (!string.IsNullOrEmpty(re))
                        re = re + " " + t;
                    else
                        re = t;
                }
            }
            return re;
        }
    }
}
复制代码

2.看一下输出结果

 

posted @   新*  阅读(452)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异

喜欢请打赏

扫描二维码打赏

支付宝打赏

点击右上角即可分享
微信分享提示