本帖最后由 Aitlo 于 2021-8-17 21:48 编辑
- -- 字符串定义
- --是有数字、字母、下划线组成的一串字符
- --lua语言中字符串可以使用一下三种方式来表达:
- -- 1.单引号间的一串字符串
- -- 2.双引号间的一串字符串
- -- 3.[[和]]间的一串字符串
-
- -- 学习字符串的表示
- str1 = "hello"
- str2 = '你好'
- str3 = [[大家下午好]]
- str4 = "'大家好'"
- str5 = '"大家下午好"'
- print(str1,str2,str3,str4,str5)
- -- 输出字符串长度
- print('str1 字符串长度='..string.len(str1)) -- 使用字符串函数,输出长度
- print('str1 字符串长度='..#str2) -- 使用# 符号,输出长度 一个汉字按两个字符
复制代码- -- 字符串常用函数
- --[[字符串的常用操作:
- 1.字符串长度 len()、大小写函数 upper()、lower()
- 2.查找函数 find()
- 3.截取函数 sub()
- 4.字符串替换函数 gsub()
- 5.字符串翻转 reverse()
- 6.格式化字符串 format()--]]
-
- -- 字符串的常用函数
- str1 = 'luaC#Java'
- str2 = 'SQLServerOracle'
- -- 字符串的长度
- print(#str1)
- print(string.len(str1))
- -- 字符串大小写转换
- print('str1全部大写输出:'..string.upper(str1))
- print('str1全部大写输出:'..string.lower(str2))
- -- 字符串查找:注意:字符串都是下标从1 开始的(C# 语言下标从0开始的)
- findPos1 = string.find(str1,'a') -- str1 是搜索的源字符串,“a”表示搜索的关键字
- findPos2 = string.find(str1,'a',5) -- str2:"5"参数,表示字符串下标5的位置开始搜索
- print(findPos1)
- print(findPos2)
- -- 字符串截取
- strSub1 = string.sub('hello world',1,3) -- 从1个字字符串截取3个
- strSub1 = string.sub('同学们hello,大家好',1,4)
- print(strSub1)
- print(strSub2)
- -- 字符串替换
- strGsub1 = string.gsub('hello world','l','z') -- 把字符串里面的 l 替换成 z
- print(strGsub1)
- -- 字符串翻转
- strReverse = string.reverse('hello world')
- print('反转之后的字符串:'..strReverse)
- -- 格式化字符串输出
- -- 传统输出多个变量的长字符串,使用拼接的方式。
- num1,num2,num3 = 10,20,30
- -- 输出三个变量相加的结果
- print("加法:num1:"..num1.."+num2:"..num2.."+num3:"..num3.."result="..num1+num2+num3)
- -- 在举例
- print('select * from tableName where id=?') --SQL 语句,查询数据库用的。
- -- 所以为了解决长字符串中添加多个变量的问题,为了简化写法,lua提供了 “字符串格式化”函数
- -- %d 表示一个数值型变量。
- -- %s 表示一个字符串变量。
- strResult = string.format('使用字符串格式化:num1:%d+ num2:%d+ num3:%d result=%d',num1,num2,num3,num1+num2+num3)
- print(strResult)
复制代码- -- 转义字符串
- --[[常用转义字符串
- 回车 \r
- 换行 \n
- 反斜杠 \\
- 双引号 “”
- --]]
- -- 学习转义字符串
- print("--学习转义字符串--")
- print("你好\r吗?") -- 回车
- print('hello\nworld') -- 换行
- print('hello\r\nworld') -- 回车换行
- print('大家\\好') -- 输出反斜杠,一般常用在表示磁盘的路径
- print("D:\\Programe\\lua")
- print("大家‘好’吗?")
复制代码
|