• string


    string.upper(s)

    字符串全部转为大写字母

    local name = "admin"
    local upper = string.upper(name)
    print("upper="..upper)
    
    • 1
    • 2
    • 3

    string.lower(s)

    字符串全部转为小写字母

    local lower = string.lower("ADMIN")
    print("ADMIN lower="..lower)
    
    • 1
    • 2

    string.len(s)

    获取字符串长度

    -- len=0
    local len1 = string.len("")
    -- len=5
    local len2 = string.len("admin")
    print("len1="..len1.." len2="..len2)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    string.reverse(s)

    字符串反转

    -- 字符串反转
    local reverse = string.reverse("123456789")
    -- 123456789 reverse=987654321
    print("123456789 reverse="..reverse)
    
    • 1
    • 2
    • 3
    • 4

    string.rep(s, n, sep)

    s: 原始字符串
    n: 重复次数
    sep: 分隔符

    -- 重复次数
    local rep = string.rep("abc",2)
    -- abcabc
    print("rep="..rep)
    
    -- 重复次数 使用分隔符
    local rep = string.rep("abc",2,"-")
    -- abc-abc
    print("rep="..rep)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    string.gsub(s, pattern, repl, n)

    功能:替换字符串
    s: 原始字符串
    pattern: 替换表达式
    repl: 替换的值
    n: 替换次数

    -- home = /usr/local, user = /usr/local
    local gsub = string.gsub("home = $HOME, user = $USER", "%$(%w+)", "/usr/local")
    print("gsub="..gsub)
    
    -- name=admin, name1=admin
    local gsub = string.gsub("name=$name, name1=$name", "$name", "admin")
    print("gsub="..gsub)
    
    -- gsub=name=admin, name1=$name 只替换1个
    local gsub = string.gsub("name=$name, name1=$name", "$name", "admin",1)
    print("gsub="..gsub)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    string.find(s, pattern, init, plain)

    功能:查找字符串
    s string 字符串
    pattern string 匹配串
    init number 从哪个位置开始
    plain boolean 是否使用文本匹配 true:只匹配文本 false:匹配正则及文本

    local _start,_end = string.find("welcome to you ! glad to see you!","to")
    if _start == nil then
        -- 如果不匹配 则会走这里
        print("not found !")
    else
        -- find start =9 end=10
        print("find start =".._start.." end=".._end)
    end
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    -- 只匹配文本  %u匹配大写字母
    local _start,_end = string.find("Welcome to you ! Glad to see you!","%u",0,true)
    if _start == nil then
        -- 如果不匹配 则会走这里
        print("not found !")
    else
        -- find start =9 end=10
        print("find start =".._start.." end=".._end)
    end
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    string.char(…)

    ascii码转字符

    local king = string.char(107,105,110,103);
    print("king="..king)
    
    • 1
    • 2

    string.byte(s, i, j)

    字符转ascii码

    -- k=107,i=105,n=110,g=103
    print("k="..string.byte("k")..",i="..string.byte("i")..",n="..string.byte("n")..",g="..string.byte("g"))
    
    • 1
    • 2

    string.match(s, pattern, init)

    如果匹配返回第1个匹配字符串
    不匹配返回nil

    -- %a+ 匹配任何字母配对 只匹配字母  数字也不包括
    local first_match_str = string.match("Welcome to you ! Glad to see you!", "%a+")
    -- first_match_str=Welcome
    print("first_match_str="..first_match_str)
    
    • 1
    • 2
    • 3
    • 4

    string.sub(s, i, j)

    字符串截取

    local twothree = string.sub("123456",2,3)
    -- twothree=23
    print("twothree="..twothree)
    
    • 1
    • 2
    • 3

    string.format(formatstring, …)

    local format = string.format("name=%s , age=%d , address=%s","admin",22,"zj")
    print("format="..format)
    
    • 1
    • 2
  • 相关阅读:
    前端JS必用工具【js-tool-big-box】学习,打开全屏和关闭全屏
    大学毕业一年 - 北漂生活
    计算机毕业设计Javaweb在线考试系统(源码+系统+mysql数据库+lw文档)
    java8 实现递归查询
    Python实现Redis缓存MySQL数据并支持数据同步
    C++设计模式_14_Facade门面模式
    [Spring MVC 8]高并发实战小Demo
    spring boot 时间格式化输出
    doxygen c++ 语法
    Spring的创建和使用1.0
  • 原文地址:https://blog.csdn.net/kq1983/article/details/126645353