(转) Lua string 操作函数

简介: 本文转自: http://www.cnblogs.com/newlist/p/3649388.html   table.keys 返回指定表格中的所有键。 格式: keys = table.keys(表格对象)用法示例: local t = {a = 1, b = 2, c = 3}local keys = table.keys(t)-- keys = {"a", "b", "c"}~~ table.values 返回指定表格中的所有值。

 

本文转自: http://www.cnblogs.com/newlist/p/3649388.html

 

table.keys

返回指定表格中的所有键。

格式:

keys = table.keys(表格对象)
用法示例:

local t = {a = 1, b = 2, c = 3}
local keys = table.keys(t)
-- keys = {"a", "b", "c"}
~~

table.values

返回指定表格中的所有值。

格式:

values = table.values(表格对象)
用法示例:

local t = {a = "1", b = "2", c = "3"}
local values = table.values(t)
-- values = {1, 2, 3}
~~

table.merge

合并两个表格。

格式:

table.merge(目标表格对象, 来源表格对象)
将来源表格中所有键及其值复制到目标表格对象中,如果存在同名键,则覆盖其值。

用法示例:

local dest = {a = 1, b = 2}
local src = {c = 3, d = 4}
table.merge(dest, src)
-- dest = {a = 1, b = 2, c = 3, d = 4}
~~

string.htmlspecialchars

转换特殊的字符为 HTML 编码。

格式:

result = string.htmlspecialchars(字符串)
下列字符会被转换:

'&' (ampersand) 转换为 '&'
'”' (double quote) 转换为 '"'
”'” (single quote) 转换为 '''
'<' (less than) 转换为 '&lt;'
'>' (greater than) 转换为 '&gt;'
~~

string.nl2br

将字符串中的换行符转换为 HTML 换行标记。

格式:

result = string.nl2br(字符串)
用法示例:

local text = "Hello\nWorld."
local result = string.nl2br(text)
-- result = "Hello<br />World."
将 string.nl2br() 和 string.htmlspecialchars() 结合使用,可以对字符串进行转换,确保转换结果符合 HTML 要求,并且没有安全问题。

local text = "---> Hello\nWorld <---"
local result = string.nl2br(string.htmlspecialchars(text))
-- result = "---&gt; Hello<br /> &lt;---"
~~

string.text2html

对字符串进行格式化,确保其中的特殊字符都转换为 HTML 标记。

格式:

result = string.text2html(字符串)
string.text2html() 除了转换特殊字符和换行符,还会将制表符“\t”替换为空格,再将空格替换为“&nbsp;”。

~~

string.split

分割字符串。

格式:

result = string.split(要分割的字符串, 分隔符)
用法示例:

local result = string.split("1,2,3", ",")
-- result = {"1", "2", "3"}
~~

string.ltrim

删除字符串前部的空白字符。

格式:

result = string.ltrim(字符串)
空白字符包括:空格、制表符“\t”、换行符“\n”和“\r”。

用法示例:

local result = string.ltrim(" \n\tHello")
-- result = "Hello"
~~

string.rtrim

删除字符串尾部的空白字符。

格式:

result = string.rtrim(字符串)
~~

string.trim

删除字符串两端的空白字符。

格式:

result = string.trim(字符串)
~~

string.ucfirst

返回首字母大写的字符串。

格式:

result = string.ucfirst(字符串)
~~

string.urlencode

生成符合 URL 规范的字符串。

格式:

result = string.urlencode(字符串)
为了通过 URL 传递数据,字符串中所有的非字母和数字都会被替换为“%编码”格式,空格会被替换为“+”。

~~

string.utf8len

计算一个 UTF8 字符串包含的字符数量。

格式:

count = string.utf8len(字符串)
当一个 UTF8 字符串中包含中文时,string.len() 返回的结果是字符串的字节长度。string.utf8len() 会确保始终返回字符串中包含的字符数量。

~~

string.formatNumberThousands

将数字格式化为千分位格式。

格式:

result = string.formatNumberThousands(数值)
用法示例:

local result = string.formatNumberThousands(12345)
-- result = "12,345"

相关文章
|
4月前
|
SQL 索引
在 SQL Server 中使用 STRING_AGG 函数
【8月更文挑战第5天】
1311 2
在 SQL Server 中使用 STRING_AGG 函数
|
2月前
lua面向对象(类)和lua协同线程与协同函数、Lua文件I/O
Lua的面向对象编程、协同线程与协同函数的概念和使用,以及Lua文件I/O操作的基本方法。
39 4
lua面向对象(类)和lua协同线程与协同函数、Lua文件I/O
|
2月前
|
数据可视化 开发者 索引
详解Wireshark LUA插件函数:function p_myproto.dissector(buffer, pinfo, tree)
在 Wireshark 中,LUA 插件通过 `function p_myproto.dissector(buffer, pinfo, tree)` 扩展协议解析能力,解析自定义应用层协议。参数 `buffer` 是 `PacketBuffer` 类型,表示原始数据包内容;`pinfo` 是 `ProtoInfo` 类型,包含数据包元信息(如 IP 地址、协议类型等);`tree` 是
95 1
|
4月前
|
编译器 C++ 容器
【C++】String常见函数用法
【C++】String常见函数用法
|
4月前
|
存储 Serverless 数据处理
Python - len(string)函数
通过上述介绍和示例,我们可以清楚地看到,在Python中,`len()`函数是处理字符串以及其他可迭代对象长度的重要工具。它简单、易用,但在实际应用中却非常强大,无论是在基础编程还是在复杂的数据处理中,`len()`函数都扮演着不可或缺的角色。
94 10
|
4月前
|
存储 C++
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
【C/C++学习笔记】string 类型的输入操作符和 getline 函数分别如何处理空白字符
55 0
|
5月前
|
C++
C++ string中的函数和常用用法
C++ 中string中的函数和常用用法
60 4
|
4月前
|
安全 编译器 C++
【剑指offer】2.2编程语言(p22-p25)——面试题1:string赋值运算函数
【剑指offer】2.2编程语言(p22-p25)——面试题1:string赋值运算函数
|
6月前
|
存储 算法 搜索推荐
深入解析String数组的操作与性能优化策略
深入解析String数组的操作与性能优化策略
|
5月前
|
存储 C++
【C++】string类的使用③(非成员函数重载Non-member function overloads)
这篇文章探讨了C++中`std::string`的`replace`和`swap`函数以及非成员函数重载。`replace`提供了多种方式替换字符串中的部分内容,包括使用字符串、子串、字符、字符数组和填充字符。`swap`函数用于交换两个`string`对象的内容,成员函数版本效率更高。非成员函数重载包括`operator+`实现字符串连接,关系运算符(如`==`, `&lt;`等)用于比较字符串,以及`swap`非成员函数。此外,还介绍了`getline`函数,用于按指定分隔符从输入流中读取字符串。文章强调了非成员函数在特定情况下的作用,并给出了多个示例代码。