smxl.net
当前位置:首页 >> luA string.mAtCh() 匹配模式 圆括号是干什么意思 >>

luA string.mAtCh() 匹配模式 圆括号是干什么意思

圆括号表示取出匹配出的字符串 一对空的圆括号 匹配出来的一定是空 所以这个圆括号其实意义不大

string.match是string库中的一个标准函数 local str = "today is 2013-11-4" print(string.match(str,"%d%d%d%d") 就可以匹配出含有4个数字的地方 也就是匹配出2013所在的位置 %s表示空白符 包括空格 制表符 回车 %w %c 还有[]^. - + * ? 等魔法...

lua匹配多字符的话 只能在单个字符里选 而你的需求都是汉字,而汉字已经算是一个完整字符串了 如果需要匹配出里面出现的每一种动物 只能用for循环逐个匹配 local strTab = ("xx","xxx","xxxx")for i,v in pairs(strTab) do print(string.match(aa...

function Split(inputstr, sep) if sep == nil then sep = "%s" end local t={} local i=1 for str in string.gmatch(inputstr, "([^"..sep.."]+)") do t[i] = str i = i + 1 end return t end local a = "23245023496830,汉字。。。。" local b...

function extractChinese(s) for m in string.gmatch(s,'"[\176-\254]+"') do print(m) endendss = 'foo"中文"a"你好"foo'extractChinese(ss) 上面的输出为: 中文 你好 注意:这个函数假设你的“中文”是GB2312编码。如果是UTF-8编码,需要改一下...

str = "啊啊啊124噶again舍得噶公司" print(string.match(str,"[\128-\254]+")) 主要就是使用字符串的匹配 匹配编号128-254的字符

字符串库在表string内提供所有函数。它也给字符串设置元表,其中的__index字段指向string表。因此,你可以使用面向对象风格的字符串函数。例如,string.byte(s, i)可写为s:byte(i)。 string.byte (s [, i [, j]]) 返回字符s, s[i+1], ···, s[j]...

参考那个随机文档就可以了。 和一般的正则表达式不一样,大部分表达式是基于pcre的,而lua的是非常精炼的,所以使用上跟一般的用法差别很大。

find第二个参数是lua自己正则表达式字符串,用%当转义字符,改成下面这样local b = "喂%(你好%)"

--如果想学习更多的lua字符串模式匹配请参考《Programming in Lua》第二十章String库 local str = "hello i am marry" local arr = {} for w in string.gmatch(str, "%S+") do table.insert(arr,w) end

网站首页 | 网站地图
All rights reserved Powered by www.smxl.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com