首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

[日常] Go语言圣经-字节切片与字符串

1.一个字符串是一个不可改变的字节序列 2.文本字符串通常被解释为采用UTF8编码的Unicode码点(rune)序列 3.内置的len函数可以返回一个字符串中的字节数目 4.第i个字节并不一定是字符串的第i个字符,因为对于非ASCII字符的UTF8编码会要两个或多个字节 5.字符串操作基于原始字符串字节 6.字符串面值方式编写,只要将一系列字节序列包含在双引号内即可,解释字符串,其中的相关的转义字符将被替换;反引号括起来,支持换行,非解释字符串 7.每个符号都分配一个唯一的Unicode码点,Unicode码点对应Go语言中的rune整数类型 8.UTF8是一个将Unicode码点编码为字节序列的变长编码 9.变长的编码无法直接通过索引来访问第n个字符 10.将字符串看作是字节(byte)的切片(slice)来实现对其标准索引法的操作

05

运维实践|MySQL查询时如何正确使用正则表达式

正则表达式(Regular Expression),又被称规则表达式,在代码中常简写为regex、regexp或RE,是计算机科学的一个概念。正则表达式使用单个字符串来描述、匹配一系列匹配某个句法规则的字符串,通常被用来检索、替换那些符合某个模式(规则)的文本。 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。它对字符串(包括普通字符(例如,a 到 z 之间的字母)和特殊字符(称为“元字符”))操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合。 正则表达式的特点是:灵活性、逻辑性和功能性非常的强;可以迅速地用极简单的方式达到字符串的复杂控制;对于刚接触的人来说,比较晦涩难懂。所以正则表达式常被用在文本检索中。

01

delphi字符串数据结构逆向

为了验证设计可行性,一般我会先快速建模,用delphi实验一下,因为VCL和编译器以及OO的思想使得模型实现起来非常快,尤其自带基础类型String非常好用而且速度极快,但是源码里是看不到的,编译器自动支持,然而在测试大规模hook api的时候,字符串操作会偶尔缺失中间的某个字节,这就是我为何不相信第三方库的原因了,在追影C实现的挂钩模块中,我没有使用任何第三方库(记录模块使用了cuckoo monitor,挂钩模块和记录器是两个东西),甚至连memcpy这些都自己用汇编做了实现,使得挂钩模块中的一切可控,随时知道问题出在哪里。在底层的开发中,任何黑箱对我来说都是一种隐患,当出问题的时候我不得不打开每个黑箱,去审计大量的第三方代码,事实上也不止一次发现第三方代码中存在大量问题。也是带着这种怀疑精神,我逆向了编译器是如何实现其自带的string类型。

02
领券