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

 更新时间:2014年11月03日 15:40:18   投稿:hebedich  
这篇文章主要介绍了在Lua中实现php的strpos()以及strrpos()函数的方法,需要的朋友可以参考下

在来写一个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 

测试如下图所示:

下面在来个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编程示例(五): C语言对Lua表的读取和添加

    Lua编程示例(五): C语言对Lua表的读取和添加

    这篇文章主要介绍了Lua编程示例(五): C语言对Lua表的读取和添加,本文直接给出代码实例,需要的朋友可以参考下
    2015-07-07
  • Lua中string.len()使用指南

    Lua中string.len()使用指南

    Lua 字符串库中的所有函数都导出在模块 string 中,今天我们先来看看string.len()的使用,有需要的小伙伴可以参考下
    2016-08-08
  • Lua编程中的一些基本语法整理

    Lua编程中的一些基本语法整理

    这篇文章主要介绍了Lua编程中的一些基本语法整理的相关资料,是Lua入门中最基础的知识,需要的朋友可以参考下
    2015-05-05
  • Lua学习笔记之数据类型

    Lua学习笔记之数据类型

    这篇文章主要介绍了Lua学习笔记之数据类型,本文同时讲解了开发环境的搭建,需要的朋友可以参考下
    2014-09-09
  • Lua源码中字符串类型的实现

    Lua源码中字符串类型的实现

    与其他主流脚本语言不同的是,Lua在实现字符串类型有两方面不同。第一,所有的字符串在Lua中都只储存一份拷贝。第二,所有的字符串变量,只保存字符串引用,而不保存它的buffer。我们来具体看看lua源码中如何实现字符串类型的吧
    2015-04-04
  • Lua教程(三):值与类型介绍

    Lua教程(三):值与类型介绍

    这篇文章主要介绍了Lua教程(三):值与类型介绍,本文起讲解了Lua的八种基本类型、userdata、thread、table等内容,需要的朋友可以参考下
    2015-03-03
  • 浅谈Lua语句

    浅谈Lua语句

    Lua支持大多数传统的语句,跟C语言和Pascal差不多。传统的语句包括:赋值,控制结构,流程调用等。Lua还支持一些不太传统的语句,例如多赋值(听起来有点怪,往下看就明白了)和局部变量声明(这个好像也是传统的吧)。
    2015-05-05
  • Lua学习笔记之函数、变长参数、closure(闭包)、select等

    Lua学习笔记之函数、变长参数、closure(闭包)、select等

    这篇文章主要介绍了Lua学习笔记之函数、变长参数、closure(闭包)、select等,本文着重讲解了这些特性的用法,并给出代码实例,需要的朋友可以参考下
    2015-04-04
  • Lua的协程(coroutine)简介

    Lua的协程(coroutine)简介

    这篇文章主要介绍了Lua的协程(coroutine)简介,本文讲解了coroutine的创建、协程的三种状态和yield函数的配合使用等内容,需要的朋友可以参考下
    2015-04-04
  • Lua读取和写入文件处理例子

    Lua读取和写入文件处理例子

    这篇文章主要介绍了Lua读取和写入文件处理,本文直接给出实例代码,需要的朋友可以参考下
    2014-11-11

最新评论