发帖
充值
 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
3 0

字符串分割扩展,支持多种分隔符

源码分享 2790 3 2021-9-9 02:49:27

  1. function XX.SplitEx(Str, cutSymbol)
  2.        
  3.         cutSymbol = tostring(cutSymbol)
  4.         if (cutSymbol=='') then
  5.                 return {}
  6.         end
  7.        
  8.         cutSymbol = XM.Split(cutSymbol,"|")
  9.         local result = Str
  10.         local new = {}
  11.         for i=1,#cutSymbol do
  12.                 local s = cutSymbol[i]
  13.                 if type(result) == "string" then
  14.                         result = XM.Split(Str,s)
  15.                 elseif type(result) == "table" then
  16.                         for _,v in pairs(result) do
  17.                                 local x = XM.Split(v,s)
  18.                                 if x and type(x) == "table" then
  19.                                         for _,val in pairs(x) do
  20.                                                 table.insert(new,#new+1,val)
  21.                                         end
  22.                                 end
  23.                         end
  24.                         result = XM.ArrayAssign(new)
  25.                         new = {}
  26.                 end
  27.         end
  28.        
  29.         return result
  30. end
复制代码
使用示例:
local str = "a,b-c,d-e"
local ret = XX.SplitEx(str,",|-") --以,和-作为分隔符
print(ret)
--运行结果: {"a","b","c","d","e"}

使用场景: 脚本界面用户需要用户输入需要英文逗号分割时,
用户错填成了中文逗号,导致脚本报错,可以使用扩展分割进行
同时处理两种语言分隔符

使用道具 举报

2021-9-10 08:06:17
感觉不错.
2021-11-25 21:10:23
这个好,对适配更多用户减少售后压力
66666666666666
您需要登录后才可以回帖 立即登录
高级模式
返回
源码分享