Lua的函数的定义、math数学函数、lua字符串的处理、lua支持的字符串类、模式串中的特殊字符_学习笔记04
Lua的函数的定义、math数学函数
定义函数
function [function name] (param1,param2)
[function code]
--定义一个函数用来求的两个数字的和
function plus (num1,num2)
return num1+num2
end
res = plus(54,12)
print(res)
- Lua内置提供了一些常用函数
1.数学处理的math相关函数
2.字符串处理的string 相关函数
3.表处理的table相关函数
4.文件操作的io相关函数
(1)数学运算函数
print(math.abs(-15)) --取绝对值
print(math.max(11,22,05,655,85)) --求最大的值
|
abs |
取绝对值 |
math.abs(-15) |
15 |
|
acos |
反余弦函数 |
math.acos(0.5) |
1.04719755 |
|
asin |
反正弦函数 |
math.asin(0.5) |
0.52359877 |
|
atan2 |
x / y的反正切值 |
math.atan2(90.0, 45.0) |
1.10714871 |
|
atan |
反正切函数 |
math.atan(0.5) |
0.463647609 |
|
ceil |
不小于x的最大整数 |
math.ceil(5.8) |
6 |
|
cosh |
双曲线余弦函数 |
math.cosh(0.5) |
1.276259652 |
|
cos |
余弦函数 |
math.cos(0.5) |
0.87758256 |
|
deg |
弧度转角度 |
math.deg(math.pi) |
180 |
|
exp |
计算以e为底x次方值 |
math.exp(2) |
2.718281828 |
|
floor |
不大于x的最大整数 |
math.floor(5.6) |
5 |
|
fmod (mod) |
取模运算 |
math.mod(14, 5) |
4 |
|
frexp |
把双精度数val分解为数字部分(尾数)和以2为底的指数n,即val=x*2n |
math.frexp(10.0) |
0.625 4 |
|
ldexp |
计算value * 2的n次方 |
math.ldexp(10.0, 3) |
80 = 10 * (2 ^3) |
|
log10 |
计算以10为基数的对数 |
math.log10(100) |
2 |
|
log |
计算一个数字的自然对数 |
math.log(2.71) |
0.9969 |
|
max |
取得参数中最大值 |
math.max(2.71, 100, -98, 23) |
100 |
|
min |
取得参数中最小值 |
math.min(2.71, 100, -98, 23) |
-98 |
|
modf |
把数分为整数和小数 |
math.modf(15.98) |
15 98 |
|
pow |
得到x的y次方 |
math.pow(2, 5) |
32 |
|
rad |
角度转弧度 |
math.rad(180) |
3.14159265358 |
|
random |
获取随机数 |
math.random(1, 100) |
获取1-100的随机数 |
|
randomseed |
设置随机数种子 |
math.randomseed(os.time()) |
在使用math.random函数之前必须使用此函数设置随机数种子 |
|
sinh |
双曲线正弦函数 |
math.sinh(0.5) |
0.5210953 |
|
sin |
正弦函数 |
math.sin(math.rad(30)) |
0.5 |
|
sqrt |
开平方函数 |
math.sqrt(16) |
4 |
|
tanh |
双曲线正切函数 |
math.tanh(0.5) |
0.46211715 |
|
tan |
正切函数 |
math.tan(0.5) |
0.5463024 |
(2)字符串处理的相关函数
- string.find() 函数用于在一个给定的目标字符串中搜索一个模式。最简单的模式就是一个单词,它只会匹配与自己完全相同的拷贝。当find找到一个模式后,它会返回两个值:匹配到的起始索引和结尾索引;如果没有找到任何匹配,它就返回nil
eg: local str = "Hello World"
local i, j = string.find(str,"Hello") -- 返回Hello在str中的起始位置和终止位置
print(i, j)
- find的兄弟match函数,string.match与string.find非常相似,它也是用于在一个字符串中搜索一种模式。区别在于,string.match返回的是目标字符串中与模式相匹配的那部分子串,并不是该模式所在的位置。示例代码:
local str = "Hello12345World"
local subStr = string.match(str,"%d+")
print(subStr) --结果为 12345
- 比较全的字符串处理,如下图所示:

Eg: string = "mengmeng xia" --替换字符串用 string.gsub
newstring = string.gsub(string,"xia","da")
print("The new string is",newstring)
(3)Lua所支持的所有字符类. 任意字符
%s 空白符
%p 标点字符
%c 控制字符
%d 数字
%x 十六进制数字
%z 代表0的字符
%a 字母
%l 小写字母
%u 大写字母
%w 字母和数字
(4)模式串中的特殊字符:
( ) . % + - * ? [ ^ $
'%' 用作特殊字符的转义字符
'%.' 匹配点;
'%%' 匹配字符 '%'。
Lua的函数的定义、math数学函数、lua字符串的处理、lua支持的字符串类、模式串中的特殊字符_学习笔记04的更多相关文章
- [lua]紫猫lua教程-命令宝典-L1-01-08. math数学函数库
L1[math]01. 取绝对值 L1[math]02. 三角函数 小知识:注意 lua下三角函数用的参数是弧度 而不是角度 弧度=角度*pi/180 -->弧度角度换算公式 lua的mat ...
- Sql Server函数全解<二>数学函数
阅读目录 1.绝对值函数ABS(x)和返回圆周率的函数PI() 2.平方根函数SQRT(x) 3.获取随机函数的函数RAND()和RAND(x) 4.四舍五入函数ROUND(x,y) 5.符号函数SI ...
- Sql Server函数全解(二)数学函数
数学函数主要用来处理数值数据,主要的数学函数有:绝对值函数,三角函数(包括正弦函数,余弦函数,正切函数,余切函数).对数函数,随机函数等.在错误产生时,数学函数将返回空值null.本次介绍各种数学 ...
- [java学习笔记]java语言基础概述之函数的定义和使用&函数传值问题
1.函数 1.什么是函数? 定义在类中的具有特定功能的一段独立小程序. 函数也叫做方法 2.函数的格式 修饰符 返回值类型 函数名(参数类型 形式参数1, 参数类型 形式参数2-) { ...
- MySql cmd下的学习笔记 —— 有关常用函数的介绍(数学函数,聚合函数等等)
(一)数学函数 abs(x) 返回x的绝对值 bin(x) 返回x的二进制(oct返回八进制,hex返回十六进制) ceiling(x) ...
- Mysql 数据库学习笔记04 函数
一.创建自定义函数 * 使用自定义函数,可以返回字符串.整型.实数或者其他类型: create [aggregate] function 名称 (参数列表) return type begin //函 ...
- math数学函数
Console.WriteLine("Math.Sign(12)--->{0})", Math.Sign(12)) Console.WriteLine("math. ...
- 【MySQL作业】MySQL函数——美和易思数学函数和控制流函数应用习题
点击打开所使用到的数据库>>> 1.添加一条商品记录. 商品编码 goodsCode 商品名 goodsName 种类 category 单价 unitPrice 02005 夏 ...
- Javascript基础系列之(七)函数(定义和调运函数)
函数是一个可以随时运行的语句,简单说,函数是完成某个功能的一组语句,它接受0或者多个参数. 函数的基本语法如下 function functionName([arg0,arg1,......argN] ...
随机推荐
- PHP包管理工具composer简单总结
前言 接触laravel之后,才知道有PSR,composer之类的东西,PHP已经不再是一门草根语言了.最近在尝试玩thrift,需要安装PHP thrift依赖库,使用composer insta ...
- systemtap dtrace与 oracle
https://fritshoogland.wordpress.com/page/3/ http://externaltable.blogspot.com/2013/06/dtrace-explora ...
- java.net.MalformedURLException: unknown protocol: c 这个错一般有两种原因导致: 1、URL协议、格式或者路径错误,
java.net.MalformedURLException: unknown protocol: c这个错一般有两种原因导致:1.URL协议.格式或者路径错误, 好好检查下你程序中的代码如果是路径问 ...
- 中国银联mPOS通用技术安全分析和规范解读
mPOS是近年出现并得到迅速发展的一种新型受理产品,不少机构和生产企业进行了各种形式的试点. 因为mPOS引入了手机.平板电脑等通用智能移动设备.并通过互联网进行信息传输.因此其安全特点与传统银行卡受 ...
- 查询结果多个合并一个GROUP_CONCAT(EmployeeName)
一个课程多个教师,查询结果单条显示,其中课程与教师关系是一一对应存入表中
- mongoDB学习笔记——存取图片(C#)
作为一个NoSql数据库的代表,存取多媒体数据,应该是强项吧?那么,图片在mongoDB里是如何存取的呢?(其实,关系型数据库存取图片也一点问题没有,所以我看NoSql的强项不在于是否存储多媒体,而在 ...
- B1607 [Usaco2008 Dec]Patting Heads 轻拍牛头 数学
今天净做水题了,这个题还不到十五分钟就搞定了,思路特别简单,就是直接按照线性求因子个数的思路就行了. 题干: Description 今天是贝茜的生日,为了庆祝自己的生日,贝茜邀你来玩一个游戏. 贝茜 ...
- E20170902-hm
devise v. 设计; 想出; 发明; 策划; n. 遗赠; 遗赠的财产; 遗赠的条款; device n. 设备
- [Apple开发者帐户帮助]二、管理你的团队(1)邀请团队成员
组织可以选择向其开发团队添加其他人员.如果您已加入Apple开发者计划,您将在App Store Connect中管理团队成员.有关详细信息,请转到在App Store Connect帮助中添加用户. ...
- css 继承性和层叠性
css有两大特性:继承性和层叠性 继承性 面向对象语言都会存在继承的概念,在面向对象语言中,继承的特点:继承了父类的属性和方法.那么我们现在主要研究css,css就是在设置属性的.不会牵扯到方法的层面 ...