以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  求助:字符中提取数字  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=149243)

--  作者:刘异
--  发布时间:2020/4/27 11:33:00
--  求助:字符中提取数字
老师:怎样获取,这种规格不具有规则的材质和第一个数值。

M564-φ31.0/φ25.0*25*φ5.02红   材质:M564         第一个数值:31.0
W10-2.1*60*75                         材质:W10           第一个数值:2.1
YL10.2-3.3*30*130红                 材质:YL10.2        第一个数值:3.3

多谢!

--  作者:有点蓝
--  发布时间:2020/4/27 11:42:00
--  
没有规则的事情做不了。
--  作者:刘异
--  发布时间:2020/4/27 12:27:00
--  
老师如果把材质分开,像下面这种情况能不能取到第一个数值
φ31.0/φ25.0*25*φ5.02红                  第一个数值:31.0
φ30.4*18*φ11黄                              第一个数值:30.4
2.1*60*75                             第一个数值:2.1
3.3*30*130红                         第一个数值:3.3

--  作者:aix
--  发布时间:2020/4/27 12:49:00
--  

[此贴子已经被作者于2020/4/27 12:53:16编辑过]

--  作者:有点蓝
--  发布时间:2020/4/27 13:57:00
--  
比如:

Dim s As String="φ31.0/φ25.0*25*φ5.02红"
Dim p = "[^\\d.]+" \'[^\\d+]
Dim r = New System.Text.RegularExpressions.Regex(p)
Dim str = r.Split(s)
For Each a As String In str
    Output.Show(a)
Next