lua 使用正则表达式分割字符串

function string_split(str, delimiter)
 if str == nil or str == ‘‘ or delimiter == nil then
  return nil
 end
 
    local result = {}
    for match in (str..delimiter):gmatch("(.-)"..delimiter) do
        table.insert(result, match)
    end
    return result
end

local tbl = string_split("aaaaacdddddzzzz", "c")

for k, v in pairs(tbl) do
 print(k ,v )
end

输出结果:

> dofile "123.lua"
1       aaaaa
2       dddddzzzz
>

时间: 2024-12-18 13:26:38

lua 使用正则表达式分割字符串的相关文章

Oracle 正则表达式 分割字符串

inData='12345|张三|男' SELECT REGEXP_SUBSTR (inData, '[^|]+', 1,1) into 用户ID FROM DUAL;SELECT REGEXP_SUBSTR (inData, '[^|]+', 1,2) into 用户姓名 FROM DUAL;SELECT REGEXP_SUBSTR (inData, '[^|]+', 1,3) into 性别 FROM DUAL;

lua string的自定义分割字符串接口

-------------------------------------------------------------------- --  Create By  SunC 2014/7/1 --  Func:  分割字符串 --  szFullString 要分割的字符串 --  szSeparator  分割字符(此处不能为转义字符,否则请先调用gsub("%.", ",")替换后再拆分) --  nSplitArray  返回分割后的字符串数组 -----

Java正则表达式实现字符串的动态多替换

需求场景: 今天在处理SQL语句的时候,由于数据库中存的格式是VARCHAR2型的,这就需要对SQL语句中WHERE条件后边的带数字的字符串加上单引号,对于字符串的处理,首先想到的就是正则表达式,对正则表达式,虽然有一些了解,但是也谈上很熟练,百度了一番(正常网络也就那个几个无奈的搜索引擎使用啦),发现替换,基本上属于固定替换,就是把某一类符合正则标准的,全部替换为一个固定的字符串,比如说,错别字的处理啊,还是比较好用的,这个在程序中也有实现,很easy.但是,我需要的是多个,且是动态替换的,最

使用正则表达式--切分字符串

转自廖老师的课程: 用正则表达式切分字符串比用固定的字符更灵活,请看正常的切分代码: 'a b c'.split(' '); // ['a', 'b', '', '', 'c'] 嗯,无法识别连续的空格,用正则表达式试试: 'a b c'.split(/\s+/); // ['a', 'b', 'c'] 无论多少个空格都可以正常分割.加入,试试: 'a,b, c d'.split(/[\s\,]+/); // ['a', 'b', 'c', 'd'] 再加入;试试: 'a,b;; c d'.sp

Python(四)装饰器、迭代器&生成器、re正则表达式、字符串格式化

本章内容: 装饰器 迭代器 & 生成器 re 正则表达式 字符串格式化 装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用.概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能. 先定义一个基本的装饰器: ########## 基本装饰器 ########## def orter(func):    #定义装饰器     de

Android--split()分割字符串特殊用法

split()分割字符串 1.不同环境下的区分 Java:分割字符串不能写成split("$")//$为要分割的字符Android:分割字符串需要加上中括号split("[$]")//$为要分割的字符 2.特殊用法--当split()分割字符串遇上特殊符号 案例分析 1 String str = "abc|dfg"; 2 3 String[] all=str.split("|"); 4 5 system.out.println

JAVA 一个或多个空格分割字符串

知识补充 String的split方法支持正则表达式: 正则表达式\s表示匹配任何空白字符,+表示匹配一次或多次. 有了以上补充知识,下面的内容就很好理解了. 一.待分割字符串 待分割字符串为如下: String str = "a b c d e f g" 其中,字符串中的的空白分别为:单个空格,多个空格,tab制表符. 二.使用一个或多个空格分割字符串 正确代码如下: String [] arr = str.split("\\s+"); for(String ss

Python装饰器、迭代器、生成器、re正则表达式、字符串格式

本章内容: 装饰器 迭代器 & 生成器 re 正则表达式 字符串格式化 装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用.概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能. 先定义一个基本的装饰器: ########## 基本装饰器 ########## def orter(func): #定义装饰器 def inner

Python装饰器、迭代器&生成器、re正则表达式、字符串格式化

Python装饰器.迭代器&生成器.re正则表达式.字符串格式化 本章内容: 装饰器 迭代器 & 生成器 re 正则表达式 字符串格式化 装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量函数中与函数功能本身无关的雷同代码并继续重用.概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能. 先定义一个基本的装饰器: ########## 基本装饰器 ########