-
【JNI】C++ 中的Android log使用格式化字符串输入
2020-09-14 18:23:21__android_log_print就像printf 一样,在格式化字符串中设置占位符 ``fmt中 __android_log_print(ANDROID_LOG_ERROR,"SSSS","I'm %s \t ,age %d",name,age); 常见参数 %c 一个字符(char) %d 有符号十进制整数...__android_log_print
就像printf 一样,在格式化字符串中设置占位符 ``fmt中__android_log_print(ANDROID_LOG_ERROR,"SSSS","I'm %s \t ,age %d",name,age);
常见参数
%c 一个字符(char) %d 有符号十进制整数(int) %e 浮点数、e-记数法 %f 单精度浮点数(默认float)、十进制记数法(%.nf 这里n表示精确到小数位后n位.十进制计数) %i 有符号十进制数(与%d相同) %p 指针 %s 对应字符串char*(%S 对应宽字符串WCAHR*(%u 无符号十进制整数(unsigned int) %% 打印一个百分号
-
在Golang解组之前从像字符串这样的json中剥离无效json字符的最佳方法
2019-01-19 22:00:26<p>For example a raw device log may have something like the following: {"foo":"bar","foo":"bar\134/\134/bar\134/bar\134/bar"} {"foo":"bar","foo":"bar\M/\134/bar\134/bar\M/bar"} <p>These result in ... -
自动从svn log中逐一分析是否修改过某字符串
2012-12-14 14:47:56在感慨岁月不饶人记忆力急剧衰退的同时,我也发出了这样的疑问,这玩意是我造的么,怎么看都不像啊。看着这个文件上百次的svn提交log,一阵晕,这要找到,得等到新玛雅历了。。。我决定还是来段脚本吧。 #!/usr...刚才我在n个月前待过的一个组的同学问我的某个文件的某几行代码是不是我提交的,为什么要那么写。在感慨岁月不饶人记忆力急剧衰退的同时,我也发出了这样的疑问,这玩意是我造的么,怎么看都不像啊。看着这个文件上百次的svn提交log,一阵晕,这要找到,得等到新玛雅历了。。。我决定还是来段脚本吧。
#!/usr/bin/python # -*- coding:utf-8 -*- ''' 先取最新100个记录,如果还没找到,从上一次批量查询里最老版本号,继续增量往前找。 ''' import os import sys import readline svnpath = "http://svn.xx.com/xxxxx/../xx.cc"; step=100 pattern = "pthread_mutex_lock" def thankyou(): print "thank you, bye." sys.exit() def seek(_vers, _filepath, _pattern): for i in range(len(_vers)-1): content = "" isfound = False cmd = "svn diff -r%s:%s %s" % (_vers[i+1], _vers[i], _filepath) for line in os.popen(cmd) : content += line if line.find(_pattern)>=0 : isfound = True if isfound: print content while True : try: cmd = raw_input("Continue?(Y/N)") except EOFError: thankyou() except KeyboardInterrupt: thankyou() if cmd.upper() == 'Y': break else: thankyou() def getvers(_ver, _step, _filepath): _vers = [] if _ver: cmd = "svn log --quiet -r%d:1 --limit %d %s | grep -o -e 'r[0-9]\+'" % (_ver, _step, _filepath) else: cmd = "svn log --quiet --limit %d %s | grep -o -e 'r[0-9]\+'" % (_step, _filepath) for line in os.popen(cmd): _vers.append(line.strip()[1:]) return _vers if __name__ == "__main__": lastver = 1 while lastver: lastver -= 1 versions = getvers(lastver, step, svnpath) lens = len(versions) if lens : seek(versions, svnpath, pattern) if lens == step: lastver = int(versions[lens-1])+1 else: lastver = 0
-
js中的字符串
2019-08-29 22:02:10在js中字符串不是对象,它是不可被修改的,就像在使用toUpperCase方法之后不会改变原来的字符串的值,而是新创建了一个字符串。 1、length属性 length代表长度,不是length() var broweType = 'mozilla'; console....在js中字符串不是对象,它是不可被修改的,就像在使用
toUpperCase
方法之后不会改变原来的字符串的值,而是新创建了一个字符串。
1、length属性length代表长度,不是length()
var broweType = 'mozilla'; console.log(broweType.length); //输出结果为7
2、indexof()方法,判断字符串中是否有某个内容,如果有,返回一个索引,没有返回-1
console.log("检索字符串"+broweType.indexOf('zilla')); // 返回2 if(broweType.indexOf('lla') != -1){ //broweType中存在lla // 判断字符串中是否存在某个内容 }//browe不存在lla
3、提取字符串
console.log(broweType.slice(0,3)); // 输出moz //提取字符串 提取的时候不包括最后一个数字
可以为两个参数,也可以为一个参数,为一个参数的时候从参数开始提取到最后一个
4、转换大小写
var radData = 'My NaMe Is MuD'; //转换大小写 console.log(radData.toLowerCase()); console.log(radData.toUpperCase());
5、
//替换字符串 console.log(broweType.replace('moz', 'van'));
用后面的内容替换前面的内容,并返回一个新的字符串,原来的字符串并不会改变
-
字符串和数组常用的方法
2019-02-17 16:39:48字符串常用的方法 字符串的平常的方法,返回的是新的字符串,并不是在字符串上进行更改 String var str = new String() console.log(str) CharAt 调用方法,返回指定下标的字符串... //console.log的值为l,就像 ...字符串常用的方法
字符串的平常的方法,返回的是新的字符串,并不是在字符串上进行更改
Stringvar str = new String() console.log(str)
CharAt
调用方法,返回指定下标的字符串var str = 'hallow world' console.log(str.charAt(2)) //console.log的值为l,就像 array的下标一样,从0开始 进行计算的
indexof
参数为想要确定是否 存在的下标,存在则返回开始下标,不存在返回-1var str = 'hallow world' console.log(str.lastIndexOf('ha')) //0
lastIndexOf
从后往前进行检索, 存在 返回下标索引值(依然是从前往后数的下标值),不存在返回-1var str = 'hallow world' console.log(str.indexof('ha')) //console.log的值为0,下标依然从0开始计算
slice
截取字符串,两个参数,开始下标,结束下标,下标值都是从0进行计算var str = 'hallow world' console.log(str.slice(2,5))//llo
search
查询字符换 ,存在返回 下标索引(从一开始计算,与indexof不同点 ),不存在返回-1var str = 'hallow world' console.log(str.search(‘y’))//-1
replace
顾名思义,指定字符串进行替换var str = 'hallow world' console.log(str.replace('ha','ljl')) //console.log的值为ljlllow world 还可以 进行搭配别的进行使用 let newstr = str.replace(str.slice(2,5),'ljl') console.log(newstr)//haljlw world
split
将字符串转换成数组,以什么为标识进行拆解var str = 'hallowworld' console.log(str.split('')) // ["h", "a", "l", "l", "o", "w", "w", "o", "r", "l", "d"] //上例就是 以空格为标识进行拆解
concat
合并字符串,对两个或以上 的字符串 进行合并var str = 'hallowworld' console.log(str.concat('dasdas')) //hallowworlddasdas
以上就是字符串常用 方法,用不足的欢迎补充
数组的常用方法
pop,shift,unshift,push
var arr = [1,2,3,4,5,6] //在 数组的末尾进行添加新的数据 arr.push(7) //[1, 2, 3, 4, 5, 6, 7] //在数组的开头进行删除最后一个 arr.shift() // [2, 3, 4, 5, 6, 7] //在数组的第一个进行添加 新的数据 arr.unshift(7) //[7, 2, 3, 4, 5, 6, 7] //在数组的末尾进行删除数据 arr.pop() //[7, 2, 3, 4, 5, 6] console.log(arr) //以上都是一起执行的
concat
进行数组的合并,参数为要拼接的数组 ,返回值为新的结合数组var arr = [1, 2, 3, 4, 5, 6] let res = arr.concat([1,2,3,4]) console.log(res) //[1, 2, 3, 4, 5, 6, 1, 2, 3, 4]
fill
意为填充,full(filler,start,end) filler为会用谁进行填充,start被填充的起始下标(包括),end结束下标(不包括)var arr = [1, 2, 3, 4, 5, 6] let res = arr.fill(1,2,4) console.log(res) //[1, 2, 1, 1, 5, 6]
join,reverse,sort,splice,slice,
var arr = [1, 2, 3, 4, 5, 6] //将数组转化为字符串 let res = arr.join() let res = arr.sort((a, b) => a - b) console.log(res, typeof res) //1,2,3,4,5,6 string // 向/从数组中添加/删除项目,然后返回被删除的项目 ,会改变原始数组 let res = arr.splice(index, del, 1) // index为添加的位置,del为删除的位置,0则是不删除,1为添加项 let res = arr.splice(2, 0, 'das') //[1, 2, "das", 3, 4, 5, 6] // 截取数组,一个参数时,从第几位截取到最后,两位的时候,从谁起到谁结束,包括结束 let res = arr.slice(2, 4) //3,4 // 翻转数组 let res = arr.reverse() console.log(res) //[6, 5, 4, 3, 2, 1]
Map
返回值为一个新数组 ,可以数组进行操作 ,配合es6的新语法会更爽 ,箭头函数var arr = [1,2,3,4,5,6] // let newArr = arr.map(function(item){return item * 2}) let newArr = arr.map(item => item * 2) console.log(newArr) //[2, 4, 6, 8, 10, 12]
Filter
返回符合条件的数组var arr = [1, 2, 3, 4, 5, 6] let newArr = arr.filter(item => item > 2) console.log(newArr) //[3, 4, 5, 6]
Every
每一项舒服都符合条件,如果是,就返回true,否则falsevar arr = [1, 2, 3, 4, 5, 6] let newArr = arr.every(item => item > 2) console.log(newArr) //false
some
如果其中一项符合条件就 返回 true,否则返回 falsevar arr = [1, 2, 3, 4, 5, 6] let newArr = arr.some(item => item > 2) console.log(newArr) //true
find
返回符合条件的第一个下标的索引,起始值0var arr = [1, 2, 3, 4, 5, 6] let res = arr.find(item => item > 5) console.log(res) //6 findIndex则返回第几个,起始值为 1
reduce
相当于一个函数累加器,接受一个回调函数的结果,然后将前一次的函数结果再和下一次的数据再次执行此回调函数.reduce(function(上一次的值,当前值,index,array){
所进行的计算
});[1,2,3,4,5].reduce(function(a,b){return a+b;});
var arr = [1, 2, 3, 4, 5, 6] var res = arr.reduce((a,b) => a + b) console.log(res) //21 var arr = [{ age: 18 },{ age: 21 },{ age: 32 }] var allAge = arr.map(item => item.age).reduce((a, b) => a + b) console.log(allAge) //71 属性值的雷类型 值得关注
数组的for循环
简单的for
简单的进行遍历,可以进行相应的操作,把这个归为数组的方法就是想做个对比var arr = [1,2,3,4,5,6] for (var i = 0; i < arr.length; i++) { console.log(arr[i]) //1,2,3,4,5,6 }
for in
主要用于对象的遍历,我只是为了方便记忆和比较进行 合并了(* ̄︶ ̄)var obj = { name: '二狗子', age: 18, address: 'usa' } for (const key in obj) { console.log('属性为>>>' + key + '-----属性值为' + obj[key]) //属性为name-----属性值为二狗子 //属性为age-----属性值为18 //属性为address-----属性值为usa }
for of
for…of循环可以作为遍历所有数据结构的统一的方法。
for…of循环可以使用的范围包括数组、Set 和 Map 结构、某些类似数组的对象(比如arguments对象、DOM NodeList 对象)、后文的 Generator 对象,以及字符串。var arr = ['a', 'b', 'c', 'd']; for (let a in arr) { console.log(a); // 0 1 2 3 } for (let a of arr) { console.log(a); // a b c d } //上面代码表明,for...in循环读取键名,for...of循环读取键值。 //如果要通过for...of循环,获取数组的索引, //可以借助数组实例的entries方法和keys方法
-
es6 字符串的扩展
2019-01-12 05:16:00es6字符串添加了很多新功能,当然也有很多关于字符串编码的一些学习性东西,在这里咱们就不多做介绍,介绍一下常用的一些方法 字符串的遍历接口 ...其实看起来和其他的遍历长的挺像的,那我们来看... -
我无法像我想要的那样返回字符串切片。 只传递最后一个
2018-04-21 18:51:06"log" "os" "strings" "time" ) const dir_to_read_path string = "path" func main() { start := time.Now() temp_string_filename := "" temp_string_filename_counter := 0 //defer list_file() //... -
Linux 提取文件中指定列数的字符串
2019-11-27 23:10:53但其实awk print $ 列是按一个字符串算的,一个字符串算作一列,就像上面的输出一样。所以$36,$40 输出的就是一些空格。 现在我想提取文件里的数字,5开头的5位,不要00,请问该如何做?PS:有很多这种log文件,... -
log4j打印异常堆栈信息的方法
2019-07-16 15:07:52当使用log4j时,如果我们调用 ...想要像e.printStackTrace()一样输出堆栈信息,可以用logger的以下方法: logger.error("123",e); 这种一个字符串一个Exception的方法。 参数中只有字符串参数是不行... -
matlab中的转义字符
2013-01-15 15:29:57最近偶然要用下Matlab,写过代码的人总有编排log信息打印语句的习惯,但是各语言里都要用到的转义字符定义当然是不一样了(可恶,希望到3000年能推出一种统一所有平台的制霸语言标准,不要老折腾我们记这个记那个的... -
servlet中字符串比较容易犯的错
2019-06-11 08:37:13在servlet的if条件判断中字符串是否相等,但是发现明明相等的两个字符串,但是就是不能够成功执行:代码像下面这样: if(log_name!=null&&log_pwd!=null&®_name==null&®_pwd1==... -
51nod【1196】字符串的数量
2017-09-18 20:20:00超级神题! 有n种字符,若此种字符的编号( \(1\) ~ \(n\)),\(i*2>...题解的做法和周六第二题有点像,但我并没有分析出最长链的长度小于 \(log_{2}n\) 这个性质。知道这个性质之后,就可以做了。 ... -
jQuery查找最后一个字符串的索引
2012-02-08 00:00:00快速jQuery的片断在一个特定的指数 (或最后一个字符串) 插入到字符串 。 例如,要查找一个表行的最后一个位置。 //find last position of ... 然后,您可以插入串入像这样另一个字符串的索引: console.log($... -
python执行sql语句的信息获取_Python SQLite如何获取正在执行的SQL字符串语句
2021-03-06 05:34:56SQLite实际上从未将参数替换为SQL查询字符串本身;参数的值在执行命令时直接读取.(格式化这些值只是为了将它们再次...像这样的东西:def log_and_execute(cursor, sql, *args):s = sqlif len(args) > 0:# generat... -
Boost Log : Wide character logging
2018-06-09 18:27:00Log库支持记录包含不同national characters的字符串。基本上有两种方法可以做到这一点。在类unix系统中,通常使用多字节字符编码(例如UTF-8)来表示national characters。在这种情况下,Log库可以像普通ASCII日志记录... -
Js字符串String
2019-07-31 11:37:41包装对象:让原始的数据也可以像引用类型一样,具有属性和方法 Js提供了3种包装对象:String Number Boolean //包装数据 var str1=“hello word!”; var str2 = new String(str1); console.log(typeof(str2),str2); ... -
模板字符串
2019-07-30 09:38:09var total = 50; console.log("总数为:" + total); // 等于 console.log(`总数为${total}`); ...`` 反引号,tab上面的那个键(~`),功能如下:...建议像 console.log("总数为:" + total) 这种简单拼接的就别用模板... -
JS 练习 —— 字符串操作
2018-01-15 05:47:55‘+ ’号来连接字符串和多个变量,但是当有很多很多的变量的时候,这样写起来就非常的麻烦和难看了,为了解决这个问题,es6给出了这个简洁的标准,可以通过两点让我们像写句子一样的把多个字符串和变量连接起来,... -
js eval setTimeout 第一个参数是字符串的情况,及在严格模式下的表现
2018-10-08 11:09:00在非严格模式下 eval 中的代码,就像是插入在代码中的一样。 function foot(){ var b =11; eval("b=function(){};console.log(b)"); console.log(b); } //非严格模式下等同于(有一点不同的是eval 内部的... -
Keil51 log设计
2017-06-29 10:04:00任何软件编程都需要有调试信息输出来进行,软件的调试。 在做keil51软件项目时,一般使用UART或者RS232输出调试信息。 那如何输出适合自己项目的调试信息,有...只需要像如下这样打印: voiduart_send_str(c... -
微信小程序,通过变量名的字符串,来获取变量并使用
2020-07-28 17:34:35注:偶然发现 不用像后面写得那么麻烦,let param = "isShow"; this.data[`${ param }`] 直接写成this.data[ param ] 如,有一变量isShow,let param = "isShow"; 通过this.data[`${ param }`]可以获取到变量... -
第20条 用None和文档字符串来描述具有动态默认值的参数
2020-02-24 19:53:42有时候我们像采用一种非静态的类型,来做关键字参数的默认值。 案例1:打印日志消息的时候,要把相关事件的时间也标注在信息中。 import datetime from time import sleep def log(message,when=datetime.datetime.... -
ES6字符串模板,剩余参数,默认参数功能与用法示例
2020-11-27 15:31:02ES6中允许使用反引号 ` 来创建字符串,此种方法创建的字符串里面可以包含由美元符号加花括号包裹的变量${varible}。如果你使用过像C#等后端强类型语言的话,对此功能应该不会陌生。 //产生一个随机数 var num=Math.... -
unity3d中Debug.Log函数浮点精度问题
2017-07-06 15:39:55原文地址:http://blog.sina.com.cn/s/blog_5d76edd80101iwib.html经常用Debug.Log函数来打印程序中的变量值,发现它...google了一下,确认是Debug.Log函数的问题,它在把Vector转成字符串的时候截断了。 用下面的方法 -
iBATIS 动态insert插入语句+特殊字符过滤
2017-07-31 13:33:38通过$(sql拼接)代替#(动态传参)的方式解决了特殊字符问题,像代码中fileName,aimParentname,oldFileName,groupPath等字段顺利的插入了单引号等特殊字符: insert into group_fileoper_log (FILE_OPE -
Unity3D中Debug.Log函数浮点float精度问题
2018-10-24 18:58:16经常用Debug.Log函数来打印程序中的变量值,发现它显示的小数位数只有一位。 这个实在太低了,像0.0xxxxx这种...google了一下,确认是Debug.Log函数的问题,它在把Vector转成字符串的时候截断了。 用下面的方... -
gets函数会自动加空字符吗_JS函数扩展
2020-12-09 20:41:26上面的代码检查函数log的参数y有没有赋值,如果没有,则指定默认值为world。这种写法的缺点在于,如果参数y赋值了,但是对应的布尔值为false,则该赋值不起作用。就像以上代码的最后一行,参数y等于空字符,结果被... -
Javascript 把Json对象转换成字符串
2013-09-26 01:07:04直接Alert Json对象 会显示[ Object object ] 不像Firefox浏览器中console.log() 一样打印json对象的属性 可以通过JSON.stringify() 方法把对象转换为字符串。 -
Response内容必须是实现__toString()的字符串或对象,Response.php:403
2019-04-06 22:07:18这是Laravel.log中的错误,也许您可以看出比我更多的内容: <pre><code>UnexpectedValueException: The Response content must be a string or object implementing __toString(), "object" given. in /Sites/... -
loglevel python 不输出_在Python中进行加减乘除
2021-01-08 03:03:53在Python中打印数字是不需要使用引号的,我们来看一下例子:加减乘除计算Python中不仅可以直接打印数字,还能对数字进行像数学中的加减乘除计算。我们来看一下:字符串和数字的区别上图中类似print(3 + 8)输出11,这...