以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  怎样通过判断字符类型,将物料名拆分  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=150998)

--  作者:dahaiforever
--  发布时间:2020/6/12 11:06:00
--  怎样通过判断字符类型,将物料名拆分
72500Y07水性改性丙烯酸磁漆3KG
代码(数字+英文)    这是描述          这是规格(数字+英文)
代码部分、规格部分 长度不确定,大小写不确定,但只有数字和英文
描述部分长度不确定,但只有中文

怎样拆分成 72500Y07 | 水性改性丙烯酸磁漆  | 3KG   三列
我在Excel中的公式
=LEFT(LEFT(M2,12),2*LEN(LEFT(M2,12))-LENB(LEFT(M2,12)))

大神怎样在foxtable中实现?




--  作者:有点蓝
--  发布时间:2020/6/12 11:15:00
--  
Dim s As String="72500Y07水性改性丙烯酸磁漆3KG"
Dim p As String = "[^\\u4e00-\\u9fa5]"
Dim str = System.Text.RegularExpressions.Regex.Replace(s , p ,"")
Output.Show(str)
Dim ar() As String = s.Replace(str,"|").split("|")
Output.Show(ar(0))
Output.Show(ar(1))

--  作者:dahaiforever
--  发布时间:2020/6/12 11:28:00
--  
大神厉害了,这么牛逼的函数图片点击可在新窗口打开查看
抱歉还有特殊情况

6629017HG水性丙烯酸聚氨酯面漆固化剂(白桶)3.6KG

6629017HG  |  水性丙烯酸聚氨酯面漆固化剂(白桶)  |  3.6KG

--  作者:有点蓝
--  发布时间:2020/6/12 11:32:00
--  
Dim p As String = "[^\\u4e00-\\u9fa5\\(\\)]"
或者
Dim p As String = "[a-zA-Z0-9]+"
[此贴子已经被作者于2020/6/12 11:32:37编辑过]