(转) 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
返回指定表格中的所有值。
格式:
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) 转换为 '<'
'>' (greater than) 转换为 '>'
~~
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 = "---> Hello<br /> <---"
~~
string.text2html
对字符串进行格式化,确保其中的特殊字符都转换为 HTML 标记。
格式:
result = string.text2html(字符串)
string.text2html() 除了转换特殊字符和换行符,还会将制表符“\t”替换为空格,再将空格替换为“ ”。
~~
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"
(转) Lua string 操作函数的更多相关文章
- lua二进制操作函数
由于 Lua 脚本语言本身不支持对数字的二进制操作(例如 与,或,非 等操作),MUSHclient 为此提供了一套专门用于二进制操作的函数,它们都定义在一个“bit”表中,使用时只要requre “ ...
- C++:string操作函数
要想使用标准C++中string类,必须要包含 #include <string>// 注意是<string>,不是<string.h>,带.h的是C语言中的头文件 ...
- 各种对list,string操作函数的总结
#encoding=utf-8#reverse,用来反转lista=['aa','bb','cc']a.reverse()print a#['cc', 'bb', 'aa']#不能直接print a. ...
- 字符串操作函数<string.h>相关函数strcpy,strcat,等源码。
首先说一下源码到底在哪里找. 我们在文件中包含<cstring>时,如果点击右键打开文档, 会打开cstring,我们会发现路径为: D:\Program Files\visual stu ...
- python中string的操作函数
在python有各种各样的string操作函数.在历史上string类在python中经历了一段轮回的历史.在最开始的时候,python有一个专门的string的module,要使用string的方法 ...
- string操作
常用的功能测试: #! -*- coding:utf-8 -*- import string s = 'Yes! This is a string' print '原字符串:' + s print ' ...
- Delphi中复制带有String的记录结构时不能使用Move之类的内存操作函数
请看下面的代码: program TestRecord; {$APPTYPE CONSOLE} uses SysUtils, Math; type TRecordA = record Na ...
- Torch-RNN运行过程中的坑 [2](Lua的string sub函数,读取中文失败,乱码?)
0.踩坑背景 仍然是torch-rnn/LanguageModel.lua文件中的一些问题,仍然是这个狗血的LM:encode_string函数: function LM:encode_string( ...
- Python中字符串操作函数string.split('str1')和string.join(ls)
Python中的字符串操作函数split 和 join能够实现字符串和列表之间的简单转换, 使用 .split()可以将字符串中特定部分以多个字符的形式,存储成列表 def split(self, * ...
随机推荐
- iOS 使用两个tableview的瀑布流
代码 悦德财富:https://www.yuedecaifu.com 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 ...
- swift语言之多线程操作和操作队列(下)———坚持51天吃掉大象(写技术文章)
欢迎有兴趣的朋友,参与我的美女同事发起的活动<51天吃掉大象>,该美女真的很疯狂,希望和大家一起坚持51天做一件事情,我加入这个队伍,希望坚持51天每天写一篇技术文章.关注她的微信公众号: ...
- python版恶俗古风自动生成器.py
python版恶俗古风自动生成器.py """ python版恶俗古风自动生成器.py 模仿自: http://www.jianshu.com/p/f893291674c ...
- Note_Master-Detail Application(iOS template)_07_ YJYDetailViewController.m
// YJYDetailViewController.m #import "YJYDetailViewController.h" @interfaceYJYDetailViewC ...
- hdu 2064
ps:分析发现,要移动n个到最左端,首先要移动n-1个从A到C,然后从C到A,然后再从A到C,然后中间是把大盘从A到C,两步.递推公式自然就是a[n]=3*a[n-1]+2 代码: #include ...
- 解决:insert Vodafone sim card,open the mms read report,when receive the read report,cann't download..
insert Vodafone sim card,open the mms read report,when receive the read report,cann't download the m ...
- 任意阶魔方阵(幻方)的算法及C语言实现
写于2012.10: 本来这是谭浩强那本<C程序设计(第四版)>的一道课后习题,刚开始做得时候去网上找最优的算法,结果发现奇数和双偶数(4的倍数)的情况下算法都比较简单,但是单偶数(2的倍 ...
- mac下U盘装机系统的制作(命令行)
1,不插入U盘和插入U盘分别命令检测硬盘,确定要制作的U盘号:diskutil list 2,卸载usb盘,不推出,diskutil umountDisk /dev/disk1 3,将dmg写入U盘, ...
- 17、SQL基础整理(事务)
事务 事务==流程控制 确保流程只能成功或者失败,若出现错误会自动回到原点 例: begin tran insert into student values('111','王五','男','1999- ...
- Unity3D ShaderLab BRDF模拟
Unity3D ShaderLab BRDF模拟 在上一篇,说到了使用渐变纹理着色,使用一个值来控制纹理的uv坐标,但是这也就表示我们只能得到一个线性的光照效果. 那么我们能不能通过观察方向的向量结合 ...