lua -字符串

字符串有数字,字母和下划线组成,用单引号‘ ’双引号“” 或者双中括号[[]]

转义字符 :/a /b /r // 等

字符串操作:

大小写转换 :string.upper(string1)   string.lower(string2)

替换:string.gsub(mainstring,findstring,replacestring,num) 从mainstring中查找findstring,将其替换为replacestring,替换个数为num,默认为全部替换

查找:string.find(str,strsub,[init,end]) 在字符串str中的位置从init到end查找strsub字符串。返回其位置

字符串反转 :string.reverse(arg) 

格式化输出:string.format(...) 如string.format("the value is:%d",4)   结果为   the value is:4

%c %d/i/o/u/x/X/e/f/F  

(1) 符号: 一个+号表示其后的数字转义符将让正数显示正号. 默认情况下只有负数显示符号.

(2) 占位符: 一个0, 在后面指定了字串宽度时占位用. 不填时的默认占位符是空格.

(3) 对齐标识: 在指定了字串宽度时, 默认为右对齐, 增加-号可以改为左对齐.

(4) 宽度数值

(5) 小数位数/字串裁切: 在宽度数值后增加的小数部分n, 若后接f(浮点数转义符, 如%6.3f)则设定该浮点数的小数只保留n位, 若后接s(字符串转义符, 如%5.3s)则设定该字符串只显示前n位

转换字符与ascii码 :string.char(num1,num2,...)将整数转换为对应的字母,并且连起来组成字符串;如string.char(97,98) 结果ab

string.byte(arg,[int])对字符串arg的位置为int的字符转换为整数,默认int为开头,string.byte('ABCD')结果65

计算长度:string.len(arg)

拷贝:string.rep(string1,n) 返回字符串string1的n个拷贝

链接:..操作符 如a=‘qq’..‘bb’   结果a=qqbb

查找:string.gmatch(str,pattern) 返回在str中查找符合pattern的子串,如果没找到,返回nil

匹配:string.match(str,pattern,init)返回从str中查找到为pattern的第一个位置,初始查找位置init,默认为1;

匹配模式:

单个字符(除 ^$()%.[]*+-? 外): 与该字符自身配对

.(点): 与任何字符配对

%a: 与任何字母配对

%c: 与任何控制符配对(例如\n)

%d: 与任何数字配对

%l: 与任何小写字母配对

%p: 与任何标点(punctuation)配对

%s: 与空白字符配对

%u: 与任何大写字母配对

%w: 与任何字母/数字配对

%x: 与任何十六进制数配对

%z: 与任何代表0的字符配对

%x(此处x是非字母非数字字符): 与字符x配对. 主要用来处理表达式中有功能的字符(^$()%.[]*+-?)的配对问题, 例如%%与%配对

[数个字符类]: 与任何[]中包含的字符类配对. 例如[%w_]与任何字母/数字, 或下划线符号(_)配对

[^数个字符类]: 与任何不包含在[]中的字符类配对. 例如[^%s]与任何非空白字符配对

当上述的字符类用大写书写时, 表示与非此字符类的任何字符配对. 例如, %S表示与任何非空白字符配对。

模式条目可以是:

单个字符类匹配该类别中任意单个字符;

单个字符类跟一个 '*', 将匹配零或多个该类的字符。 这个条目总是匹配尽可能长的串;

单个字符类跟一个 '+', 将匹配一或更多个该类的字符。 这个条目总是匹配尽可能长的串;

单个字符类跟一个 '-', 将匹配零或更多个该类的字符。 和 '*' 不同, 这个条目总是匹配尽可能短的串;

单个字符类跟一个 '?', 将匹配零或一个该类的字符。 只要有可能,它会匹配一个;

%n, 这里的 n 可以从 1 到 9; 这个条目匹配一个等于 n 号捕获物(后面有描述)的子串。

%bxy, 这里的 x 和 y 是两个明确的字符; 这个条目匹配以 x 开始 y 结束, 且其中 x 和 y 保持 平衡 的字符串。 意思是,如果从左到右读这个字符串,对每次读到一个 x 就 +1 ,读到一个 y 就 -1, 最终结束处的那个 y 是第一个记数到 0 的 y。 举个例子,条目 %b() 可以匹配到括号平衡的表达式。

%f[set], 指 边境模式; 这个条目会匹配到一个位于 set 内某个字符之前的一个空串, 且这个位置的前一个字符不属于 set 。 集合 set 的含义如前面所述。 匹配出的那个空串之开始和结束点的计算就看成该处有个字符 '\0' 一样。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值