微博内容长度计算函数(C#)

时间:2022-04-23
本文章向大家介绍微博内容长度计算函数(C#),主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

微博内容长度的计算方法(不一定完全无误,仅提供一个思路):

       public static int GetWeiboContentLength(string weiboContent) 
       {    
           var max = 140;    
           var surl = 11;    
           var urlCount = 0; 
           RegexOptions ops = RegexOptions.Compiled;   
           Regex regex = new Regex(@"http://[a-zA-Z0-9]+(.[a-zA-Z0-9]+)+([-A-Z0-9a-z_$.+!*()/,:;@&=?~#%]*)", ops);    
           var content = weiboContent;    
           if (regex.IsMatch(weiboContent))    
           {    
               var matchs = regex.Matches(weiboContent);    
               for (int i = 0; i < matchs.Count; i++)    
               {    
                   var count = matchs[i].Groups[0].Length;    
                   urlCount += count <= max ? surl : (count - max + surl);    
                   content = content.Replace(matchs[i].Value, "");    
               }    
           }    
           var result = urlCount + content.Length;    
           return result;    
       }