Lua:
搜索和替换文本
How to: 如何进行
local text = "Hello World! Today is a great day."
local searchText = "great"
local replaceWith = "wonderful"
local result = text:gsub(searchText, replaceWith)
print(result)
-- Output: Hello World! Today is a wonderful day.
简洁代码,快速理解。gsub
方法实现搜索替换,括号内三个参数:查找内容、替换内容和原始文本。
Deep Dive 深入了解
搜索替换从文本编辑早期就有了,像是sed
工具在Unix系统上。Lua的gsub
函数是内置的字符串处理功能中的一部分,高效且易用。你可以指定模式匹配(patter matching)复杂查找,或替换所有匹配项。举个例子,可以使用正则表达式来指定模式:
local text = "Lua is fun, because Lua is cool and Lua is easy!"
local pattern = "(Lua) is"
local replaceWith = "%1 was"
local result = text:gsub(pattern, replaceWith)
print(result)
-- Output: Lua was fun, because Lua was cool and Lua was easy!
这里%1
代表模式中第一个捕获(括号内的内容),在替换时使用。
See Also 相关资源
- Lua用户手册: https://www.lua.org/manual/5.4/
Pattern Matching
教程: https://www.lua.org/pil/20.2.html- Lua社区讨论: http://www.luafaq.org/
记得实践,多编程,才能深入学习Lua搜索替换的妙用。