我正在学习lua。关于在lua中进行模式匹配,我在lua.org的lua文档中找到了以下句子: 然而,在Lua中进行模式匹配是一个强大的工具,包含一些标准POSIX实现难以匹配的功能。 既然我熟悉posix正则表达式,我想知道是否有任何常见示例,lua模式匹配相对于正则表达式更好 ...
我有一个包含路径的标准Windows文件名,需要从字符串中提取出文件名、扩展名和路径。 目前我只是从末尾开始读取字符串,查找“.”来截取扩展名,查找第一个“\”来获取路径。 我相信我应该能够使用Lua模式来做到这一点,但是当涉及从字符串右侧开始工作时,我总是失败。 例如: c:\ tem...
在Lua中是否有可能实现?local noSlashEnding = string.gsub("slash\\ending\\string\\", "\\|/$", "") -- noSlashEnding should contain "slash\\ending\\string" loc...
我对Lua和模式匹配都不熟悉。我想弄清楚如何在冒号后匹配字符串中的所有内容,并将该部分字符串放入另一个变量中。我在网上找了很久都没有太大的收获,或者可能是我没有看到。那么我应该如何做呢? 例如,假设我有一个名为 my_string 的变量,它等于"hello:hi_there"或类似的字符串...
这里有一些关于拆分字符串的讨论和实用函数,但我需要一个特定的一行代码来完成非常简单的任务。我有以下字符串:local s = "one;two;;four" 我希望将其在";"上进行分割。最终,我希望获得{ "one", "two", "", "four" }。 于是我尝试这样做:local...
我可以使用以下方式将字符串的第一个字母大写:str.capitalize()str:gsub("^%l", string.upper) 我该如何修改它以使字符串中的每个单词的首字母大写?
我正在尝试进行简单的字符串操作:获取文件名,不包括扩展名。 但是,string.find() 函数似乎无法识别句点: s = 'crate.png' i, j = string.find(s, '.') print(i, j) --> 1 1 仅使用点: s = 'crate.p...
我将尝试使用简单的模式匹配在Lua中解析化学式,但是我不知道如何指定一个可选的捕获组。这是我想出的模式: pattern = "(%u%l*)(%d*)" 第一组捕获原子符号(即“H”,“He”等),第二组捕获分子中该原子的数量。这个值通常是整数,但如果它是1,则通常被省略,例如: f...