0
点赞
收藏
分享

微信扫一扫

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

皮皮球场 2022-09-02 阅读 26

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

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;
}



举报

相关推荐

0 条评论