zoukankan      html  css  js  c++  java
  • 截取指定长度中英文字符串

    最近在做项目时,碰到含有中英文混在一起的字符串,而存入数据库(DB2)又是限定长度的,找到了一个比较好的截取指定长度中英文字符方法:
    #region 截取指定长度中英文字符串

      /// <summary>
      /// 截取指定长度中英文字符串
      /// </summary>
      /// <param name="stringToSub">字符串</param>
      /// <param name="length">截取长度</param>
      /// <returns>返回字符串</returns>
      public static string FormatString(string stringToSub, int length)
      {
       Regex regex = new Regex("[\u4e00-\u9fa5]+", RegexOptions.Compiled);
       char[] stringChar = stringToSub.ToCharArray();
       StringBuilder sb = new StringBuilder();
       int nLength = 0;

       for (int i = 0; i < stringChar.Length; i++)
       {
        if (nLength == length - 1)
        {
         if (regex.IsMatch((stringChar[i]).ToString()))
         {
          break;
         }
        }

        if (regex.IsMatch((stringChar[i]).ToString()))
        {
         sb.Append(stringChar[i]);
         nLength += 2;
        }
        else
        {
         sb.Append(stringChar[i]);
         nLength = nLength + 1;
        }

        if (nLength >= length)
        {
         break;
        }
       }

       return sb.ToString();
      }

      #endregion

    非有希望才坚持,坚持才会有希望
  • 相关阅读:
    [VC++入门]C++中常用的运算符及微软自定义类型
    搜索引擎蜘蛛爬虫原理
    Enterprise Library 5.0
    Installshield 12 中文系列教程之 定义安装必要条件
    installshield脚本
    c# 事物处理
    InStallShield网络资源参考
    Could not execute query against OLE DB provider 'OraOLEDB.Oracle'
    frameset小结
    最痛心的距离
  • 原文地址:https://www.cnblogs.com/eugenewu0808/p/FormatString.html
Copyright © 2011-2022 走看看