计算新浪Weibo消息长度(还可以输入119字)

此文为计算新浪Weibo的消息长度的方法. 就是 (发言请遵守社区公约,还可以输入119字).


代码如下:

var getMessageLength = (function() {
var byteLength = function(b) {
if(typeof b == "undefined") {
return 0;
}
var a = b.match(/[^\x00-\x80]/g);
return(b.length + (!a ? 0 : a.length));
};
return function(message) {
message = message || '';
message = message.replace(/\r\n/g, "\n");
var c = 41,
d = 140,
e = 20,
f = message,
g = message.match(/http:\/\/[a-zA-Z0-9]+(\.[a-zA-Z0-9]+)+([-A-Z0-9a-z_\$\.\+\!\*\(\)\/,:;@&=\?\~\#\%]*)*/gi) || [],
h = 0;

for(var i = 0, j = g.length; i < j; i++) {
var k = byteLength(g[i]);
if(/^(http:\/\/t.cn)/.test(g[i])) {
continue;
}
/^(http:\/\/)+(t.sina.com.cn|t.sina.cn)/.test(g[i]) || /^(http:\/\/)+(weibo.com|weibo.cn)/.test(g[i]) ? h += k <= c ? k : k <= d ? e : k - d + e : h += k <= d ? e : k - d + e;
f = f.replace(g[i], "");
}
var l = Math.ceil((h + byteLength(f)) / 2);
return l;
};
})();

getMessageLength('昨天电脑的硬盘坏了,我发邮件给美国国家安全局,他们竟然不肯把备份的内容发给我!'); //39

(0)

相关推荐

  • 计算新浪Weibo消息长度(还可以输入119字)

    此文为计算新浪Weibo的消息长度的方法. 就是 (发言请遵守社区公约,还可以输入119字). 复制代码 代码如下: var getMessageLength = (function() { var byteLength = function(b) { if(typeof b == "undefined") { return 0; } var a = b.match(/[^\x00-\x80]/g); return(b.length + (!a ? 0 : a.length)); };

  • PHP基于新浪IP库获取IP详细地址的方法

    本文实例讲述了PHP基于新浪IP库获取IP详细地址的方法.分享给大家供大家参考,具体如下: <?php class Tool{ /** * 获取IP的归属地( 新浪IP库 ) * * @param $ip String IP地址:112.65.102.16 * @return Array */ static public function getIpCity($ip) { $ip = preg_replace("/\s/","",preg_replace(&q

  • Android仿QQ、新浪相册的实现

    在移动应用中,很多时候都会用到图片选择.图片裁剪等功能.最近我也在准备一个开源的相册项目,以方便以后开发应用的时候使用,也尽可能的方便需要的人.一个完整的相册,应该包含相册列表.图片列表.图片的单选和多选.图片的裁剪.拍照.多选图片的大图预览等功能.这也是我这个项目将要包含的功能.在本篇博客中,将会讲述下我在这个项目中相册列表和图片列表的大致实现. 实现效果 结合几个常用的APP中的相册效果,当前项目中已经实现了一些基本的功能和UI,在后续完善的过程中还会有所变动.项目在Github上开源,欢迎

  • Java模拟新浪和腾讯自动登录并发送微博

    Java模拟新浪和腾讯自动登录并发送微博功能分享给大家,供大家参考,具体内容如下 1.准备工作 只是登录无需申请新浪和腾迅的开发者账号,如果需要发送微博功能,需要申请一个新浪和腾迅的开发者账号,并添加一个测试应用. 过程请参考官方帮助文档,申请地址:新浪:http://open.weibo.com    腾迅:http://dev.t.qq.com/ 我们需要的是App Key和App Secre及redirect_URI,源代码中已经包含了我申请的测试key,但由于限制直接用我的key你们的账

  • JS实现仿新浪黄色经典滑动门效果代码

    本文实例讲述了JS实现仿新浪黄色经典滑动门效果代码.分享给大家供大家参考.具体如下: 这是一款仿新浪网的滑动门,黄色经典,操作舒适度确实很舒服,不亏是门户哦,长度和宽度这个就要自己修改啦,布局紧凑合理,本人喜欢的风格. 运行效果截图如下: 在线演示地址如下: http://demo.jb51.net/js/2015/js-f-sina-jd-move-style-demo/ 具体代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Trans

  • JQuery与Ajax调用新浪API获取短网址的代码

    复制代码 代码如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>获取新浪短网址</title> <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.8.0.js"></script> <!--<script type

  • 易语言使用超文本显示新浪天气预报的代码

    常量数据表 .版本 2 .常量 v1, "<文本长度: 24>", , <p class="inx_w_city_c"> .常量 K, "<文本长度: 8>", , url=http .常量 J, "<文本长度: 47>", , <a href="http://share.sina.cn/callback?content= .常量 v2, "<文本

  • PHP通过调用新浪API生成t.cn格式短网址链接的方法详解

    本文实例讲述了PHP通过调用新浪API生成t.cn格式短网址链接的方法.分享给大家供大家参考,具体如下: 新浪提供了长链接转为短链接的API,可以把长链接转为 t.cn/xxx 这种格式的短链接. API: http://api.t.sina.com.cn/short_url/shorten.json (返回结果是JSON格式) http://api.t.sina.com.cn/short_url/shorten.xml (返回结果是XML格式) 请求参数: source 申请应用时分配的App

  • 新浪开源轻量级分布式RPC框架motan简单示例解析

    目录 前言 概述 功能 简单调用示例 在pom中添加依赖 为调用方和服务方创建公共接口 编写业务接口逻辑.创建并启动RPCServer 创建并执行RPCClient 集群调用示例 使用CONSUL作为注册中心 Motan-Consul配置 使用ZOOKEEPER作为注册中心 Motan-ZooKeeper配置 前言 好消息,支撑微博千亿调用的轻量级 RPC 框架 Motan 在2016年5月份正式开源了,业界现在除了Dubbo 和 DubboX典型的分布式RPC服务治理型框架外,又多了一个优秀的

  • 腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口

    腾讯的接口是 ,返回数组 http://fw.qq.com/ipaddress 返回值 var IPData = new Array("61.135.152.194","","北京市",""); 新浪的接口 : http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js 多地域测试方法:http://int.dpool.sina.com.cn/iplookup/ip

随机推荐