[quote=引用 1 楼 hnwyllmm 的回复:] str = "每 2.01秒造成 4 点伤害" 这个字符串的格式是固定的吗? 我的正则表达式写的不好,写了一个简单的,做示意: str = "每 2.01秒造成 4 点伤害"; print(string.len(str)) local i, j = string.find(str, "[0-9]*%.[0-9]*"); -- [0-9]*%.[0-9]* 这个应该是浮点数的正则表达式,不过写的肯定不对 print("i = " .. tostring(i)); print("j = " .. tostring(j)); print(string.sub(str, i, j) ) i, j = string.find(str, "[0-9]+", j + 1); print(string.sub(str, i, j)); LUA中string.find函数: string.find(s, pattern, pos) s 源字符串, pattern: 查找的模式字符串,可以是正则表达式 pos:查找的开始位置,LUA中索引从1开始 楼主再从网上搜索下string.find的详细用法
str = "每 2.01秒造成 4 点伤害" 这个字符串的格式是固定的吗? 我的正则表达式写的不好,写了一个简单的,做示意: str = "每 2.01秒造成 4 点伤害"; print(string.len(str)) local i, j = string.find(str, "[0-9]*%.[0-9]*"); -- [0-9]*%.[0-9]* 这个应该是浮点数的正则表达式,不过写的肯定不对 print("i = " .. tostring(i)); print("j = " .. tostring(j)); print(string.sub(str, i, j) ) i, j = string.find(str, "[0-9]+", j + 1); print(string.sub(str, i, j)); LUA中string.find函数: string.find(s, pattern, pos) s 源字符串, pattern: 查找的模式字符串,可以是正则表达式 pos:查找的开始位置,LUA中索引从1开始 楼主再从网上搜索下string.find的详细用法
64,642
社区成员
250,580
社区内容
加载中
试试用AI创作助手写篇文章吧