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

    非有希望才坚持,坚持才会有希望
  • 相关阅读:
    EOS概念理解总结
    boost asio one client one thread
    EOS 数据签名与公匙验证代码用例
    EOS 智能合约编写(一)
    EOS多节点同步代码分析
    EOS 用户权限相关命令
    EOS 多主机多节点配置终极命令
    EOS多主机多节点环境配置
    ubuntu命令错误集
    java多线程中的调度策略
  • 原文地址:https://www.cnblogs.com/eugenewu0808/p/FormatString.html
Copyright © 2011-2022 走看看