• 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
  • 相关阅读:
    Harbor 镜像复制 每 30 分钟发生一次超时
    Word处理控件Aspose.Words功能演示:使用 Python 将 Word 文档转换为 TIFF
    透明度模糊Android实现
    基于.net的应用开发技术-作业二
    k8s--基础--23.3--认证-授权-准入控制--授权
    锐龙r7 5700X和5800X区别
    vscode ssh 免密连接
    通过kubernetes可视化界面(rancher)安装kibana
    论文翻译 | PROMPTAGATOR : FEW-SHOT DENSE RETRIEVAL FROM 8 EXAMPLES
    C. Minimum Varied Number
  • 原文地址:https://blog.csdn.net/kq1983/article/details/126645353