function - 在lua中拆分算术运算字符串
问题描述
以下是lua中的算术运算字符串。
local str ='x+abc*def+y^z+10'
可以拆分此字符串以便显示单个变量或数字吗?例如,假设 stringstr
被拆分为 table s
。然后输出将是
s[1] = x
s[2] = abc
s[3] = def
s[4] = y
s[5] = z
s[6] = 10
拆分由运营商完成+,-,*,\,^,%
解决方案
您可以使用 string.gmatch 来迭代您的字符串。随意将其他运算符添加到模式中。
参考https://www.lua.org/manual/5.3/manual.html#6.4.1
local str ='x+abc*def+y^z+10'
local s = {}
for operand in str:gmatch('[^%+%*%^]+') do
table.insert(s, operand)
end
推荐阅读
- r - 根据 gps 坐标列表更改基于开放街道地图的 igraph 中路径边缘的权重
- excel - 使用 Excel 365,如何生成随机项目的随机列表,不重复,同时可能忽略某些行
- android - WifiNetworkSpecifier - 单个网络可用时自动连接
- calculator - 计算器示例/JS 和 HTML 元素之间的链接
- python-3.x - 熊猫合并多头数据帧
- laravel - 在 Blade View 中访问具有关系的相关记录
- react-component - FluentUI DetailsList onColumnClick 与 React Hooks 提供空项目
- python - 如何根据Odoo13中不同模型中的另一个字段自动填充一个字段?
- python - 如何为 keras LSTM 模型定义一个特定的损失函数
- python-3.x - Selenium 无头 chrome 错误“Bootstrap 的 JavaScript 需要 jQuery”