信息与技术首页投稿(暂停使用,暂停投稿)程序员

Lua string.byte()

2016-08-07  本文已影响11151人  AlbertS
ASCII.png

前言#

从今天开始我们要进军字符串操作的库函数了,这些函数都放在全局表string中,说起字符串操作熟悉c语言的程序猿都不会陌生,比如strcpystrcmpstrlen等等,这些函数串处理的经典函数。

lua中这个字符串处理库也是提供对字符串处理的基本函数,比如查找、提取子串、,模式匹配等等,在Lua中字符串的第一个字母索引为1,这一点不同于c语言中第一个字母索引为0的约定,并且在lua中引用字符串的索引可以为负数,表示从字符串的末尾向前查找,比如字符串最后一个字母的索引可以表示为-1。

字符串处理库的所有函数都被放置在表string中,并且还为操作的字符串设置了元表,使得这些字符串有了一个指向表string__idnex字段,因此你可以用面向对象的方式来调用这些函数,比如函数string,.byte(s, i)可以写成`s:byte(i)。

内容#


string.byte()##


Usage##

-- 首先定义一个字符串
local str = "012abcd"
print("str = "..str)

-- 使用常规方式
print("\nafter string.byte(str,1,4)")
print(string.byte(str,1,4))

-- 使用另一种表现方式
print("\nafter str:byte(1,4)")
print(str:byte(1,4))

-- 使用负数索引
print("\nafter str:byte(-2,-1)")
print(str:byte(-2,-1))

-- 当参数i大于j时
print("\nafter str:byte(2,1)")
print(str:byte(2, 1))

-- 当索引无效时
print("\nafter str:byte(2000,1000000)")
print(str:byte(2000,1000000))
string_byte.png

总结#

上一篇 下一篇

猜你喜欢

热点阅读