Lua中实现php的strpos()以及strrpos()函数

(编辑:jimmy 日期: 2024/10/5 浏览:2)

在来写一个lua中实现php的strpos()函数,查找某个字符串在指定字符串首次出现的位置,其实lua中也为我们提供了这样的函数使用string.find()即可获得,下面我们还是简单写一个函数,代码如下:

复制代码 代码如下:
function strpos (str, f)  
    if str ~= nil and f ~= nil then  
        return (string.find(str, f))  
    else 
        return nil  
    end  
end 

测试如下图所示:

Lua中实现php的strpos()以及strrpos()函数

下面在来个strrpos()函数,查找某个字符串在指定字符串最后一次出现的位置,下面我们还是简单写一下函数,代码如下:

复制代码 代码如下:
function strrpos (str, f)  
    if str ~= nil and f ~= nil then  
        local t = true 
        local offset = 1 
        local result = nil  
        while (t)  
        do 
            local tmp = string.find(str, f, offset)  
            if tmp ~= nil then  
                offset = offset + 1 
                result = tmp  
            else 
                t = false 
            end  
        end  
        return result  
    else 
        return nil  
    end  
end 

测试如下图(注意:如果要查找 . 需要进行转义,使用"%."):

Lua中实现php的strpos()以及strrpos()函数

好了,今天就先到这里,以后我们继续实现其他函数功能

一句话新闻
微软与英特尔等合作伙伴联合定义“AI PC”:键盘需配有Copilot物理按键
几个月来,英特尔、微软、AMD和其它厂商都在共同推动“AI PC”的想法,朝着更多的AI功能迈进。在近日,英特尔在台北举行的开发者活动中,也宣布了关于AI PC加速计划、新的PC开发者计划和独立硬件供应商计划。
在此次发布会上,英特尔还发布了全新的全新的酷睿Ultra Meteor Lake NUC开发套件,以及联合微软等合作伙伴联合定义“AI PC”的定义标准。