在奇趣网统计宝的网页机器人里可以使用string.indexOf()函数。输入源码:
var _string = await jsx.loadcodex(“return string;”);
var a = await _string.indexOf(“奇趣网统计宝”,”统计”);
console.log(“结果:”,a);
这样就可以得到搜索结果中的位置。
在奇趣网统计宝的网页机器人里可以使用string.indexOf()函数。输入源码:
var _string = await jsx.loadcodex(“return string;”);
var a = await _string.indexOf(“奇趣网统计宝”,”统计”);
console.log(“结果:”,a);
这样就可以得到搜索结果中的位置。
在奇趣网统计宝的网页机器人里可以使用string.hex()函数以十六进制编码字符串。输入源码:
var _string = await jsx.loadcodex(“return string;”);
var v = “奇趣网统计宝”;
var a = await _string.hex (v);
console.log(“a:”,a);
输出:
a: \xE5\xA5\x87\xE8\xB6\xA3\xE7\xBD\x91\xE7\xBB\x9F\xE8\xAE\xA1\xE5\xAE\x9D
前缀编码统一为\x,六个汉字,18个编码,每个汉字三个编码。
在奇趣网统计宝的网页机器人里可以使用string.getUtf()函数读取当前进程环境变量。输入源码:
var _string = await jsx.loadcodex(“return string;”);
var v = “奇趣网统计宝”;
var a = await _string.getenv(v);
console.log(“a:”,a);
如果成功会返回字符串,读取失败会返回 null。
在奇趣网统计宝的网页机器人里可以使用string.getUtf()函数获取字符串的UTF格式标记。输入源码:
var _string = await jsx.loadcodex(“return string;”);
var a = await _string.getUtf(“统计宝”);
console.log(“a:”,a);
若输出16 表示双字节编码的UTF-16编码
若输出8 表示UTF-8字符串,
若输出(8 | 1) 表示UTF-8、ANSI兼容编码,即所有字符小于0x80
通过这个函数我们可以知道从别处得到的文本是什么编码。
在我前面的系列文章里,奇趣网统计宝详细讲解过挖掘大量数据规律的思路,比如手上的数据有几千上万条的时候,它基本是符合大数定律的,每个数字出现的次数是接近它的平均值的,我们可以利用大数定律来预判大数据未来的数据。
但是手上只有少量数据的时候怎么办呢?比如手上只有几十或几百条数据,它就很难呈现出大数定律的规律了,这时候我们可以用“规律库”思路,预先设计好上千上万条规律,然后把数据套进去对比,把符合的规律显示出来,并按某种规则进行排序,这样就能对少量数据的未来可能性进行某种程度上的预判。
比如说,黑箱里有十个球,每次拿一个出来又放回去打乱重新拿,拿了20次之后,第21次将会拿出哪个乒乓球的可能性最大?这就是咱们要研究的问题。
字符A的的二进制数值为0100 0001,转换为10进制为65,即,字符A的编号为10进制的65,二进制的0100 0001,在奇趣网统计宝的网页机器人里可以使用string.fromCharCode()函数在字符集对照表里把字符编码转换为字符。输入源码:
var _string = await jsx.loadcodex("return string;");
var a = await _string.fromCharCode(65);
console.log("a:",a);
var b = await _string.fromCharCode(66);
console.log("b:",b);
输出:
a: A
b: B
Unicode字符集共有17 × 65536 = 111 4112 个码点,并不是每个码点就一定对应有一个字符,因为,目前Unicode字符集中有很多码点都还未被使用。
有时候我们想把某些长短不一的数字在前面补0变成统一长度的数字,怎么办呢?在奇趣网统计宝的网页机器人里,可以使用string.format()函数格式化字符。输入源码:
var _string = await jsx.loadcodex("return string;");
var a = await _string.format("%08i",12345);
console.log("a:",a);
var b = await _string.format("%08d",23456);
console.log("b:",b);
输出:
a: 00012345
b: 00023456
可以看到此源码会自动在前面补0把它补够指定长度。
在奇趣网统计宝的网页机器人里可以使用string.find()函数查找字符串位置,输入以下源码:
var _string = await jsx.loadcodex("return string;");
var a = await _string.find("abcdefg","def");
console.log("a:",a);
运行后输出:
a: 4
也就是找到后会返回所在的开始位置,如果没找到会返回null。
在奇趣网统计宝的网页机器人里,string.unescape()函数可以用来解转义字符串,也就是把转义符渲染输出成不可见的东西。
var _string = await jsx.loadcodex("return string;");
var a = await _string.unescape("1111_\t_2222",true,true);
console.log("a:",a);
运行后输出:
a: 1111_ _2222
可以看到“\t”被渲染输出为不可见的长空格。
有时候从别处获取回来的一些字符串中,会存在不可见的转义字符,比如换行符、回车符、制表符、换页符、结束符等,怎么把这些不可见的转义字符转换成可见的转义编码呢?在奇趣网统计宝的网页机器人输入以下源码:
var _string = await jsx.loadcodex("return string;");
var a = await _string.escape("1111_ _2222",true,true);
console.log("a:",a);
运行后输出:
a: 1111_\t_2222
由此可知此字符串里包含了一个横向制作符“\t”,它显示时是一个看不见的长空格。