以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  用正则式提取数字出现的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=74388)

--  作者:sloyy
--  发布时间:2015/9/9 22:37:00
--  用正则式提取数字出现的问题
用正则式:
DIM S string=Tables("表A").Current("第一列")
 Tables("表A").Current("第二列")=System.Text.RegularExpressions.Regex.Match(S,"[0-9]+").ToString()

结果 3 和18 得出的结果是错误的


图片点击可在新窗口打开查看此主题相关图片如下:搜狗截图20150909223302.png
图片点击可在新窗口打开查看

什么原因?

2 最后的结果要乘上10000 ,怎么处理? 
[此贴子已经被作者于2015/9/9 22:40:31编辑过]

--  作者:sloyy
--  发布时间:2015/9/9 22:42:00
--  
1 我明白了 前面有个2015年
--  作者:大红袍
--  发布时间:2015/9/9 22:44:00
--  
Dim str As String = "2015年15万"
Dim s As String = System.Text.RegularExpressions.Regex.Match(str,"[0-9]+(?=万+)").ToString() * 10000
msgbox(s)

--  作者:sloyy
--  发布时间:2015/9/9 22:55:00
--  
有个小错误,带小数点就不正确
改了一下 加上 .    正确了
 
Dim str As String = "2015年15万"
Dim s As String = System.Text.RegularExpressions.Regex.Match(str,"[0-9.]+(?=万+)").ToString() * 10000
msgbox(s)
[此贴子已经被作者于2015/9/9 22:55:10编辑过]

--  作者:sloyy
--  发布时间:2015/9/9 22:57:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:搜狗截图20150909225621.png
图片点击可在新窗口打开查看


正则式:

 Tables("表A").Current("第二列")=System.Text.RegularExpressions.Regex.Match(Values(Index),"[0-9.]+(?=万+)").ToString() * 10000
    

[此贴子已经被作者于2015/9/9 22:57:16编辑过]