引用7楼:for idx = 1 to length(str) if isnumberic(mid(str,idx,1)) then str2 = str2 & mid(str,idx,1) else str2 = "" '一旦发现有非数字退出 exit for end if nextmsgbox str2稍微修改下即可啊
'This code was generated by "RegTestTool v1.1.30", please call the sub TestReg. Private Sub TestReg() Dim strData As String Dim reg As Object Dim matchs As Object, match As Object strData = "名称" & vbCrLf & _ "名称A" & vbCrLf & _ "AINIAI爱你" & vbCrLf & _ "23" & vbCrLf & _ "2" & vbCrLf & _ "31" & vbCrLf & _ "41" & vbCrLf & _ "酒气恒22" & vbCrLf & _ "爱死kdj" & vbCrLf & _ "7" & vbCrLf & _ "阿卡拉上KK01" & vbCrLf & _ "8" Set reg = CreateObject("vbscript.regExp") reg.Global = True reg.IgnoreCase = True reg.MultiLine = True reg.Pattern = "^\d+$" Set matchs = reg.Execute(strData) For Each match In matchs Debug.Print match.Value Next End Sub
哈哈,知道什么叫以讹传讹了,有isnumberic这个函数么?是IsNumeric 楼主试试下面的代码 Private Sub Command1_Click() Open "C:\1.txt" For Input As #1 Do While Not EOF(1) ' 循环至文件尾。 Line Input #1, TextLine ' 读入一行数据并将其赋予某变量。 If IsNumeric(TextLine) Then Text1.Text = TextLine End If Loop Close #1 End Sub
2、依次判断字符串中的字符的ASCII码,如果不在:&H30~&H39之间就不是数字,是数字就取出它存在另外一个字符串中
MsgBox a Like String(Len(a), "#")
我的意思是。
数据库的文本,用sql 提取出来都是文本。
isnumeric判断肯定都是FALSE
if isnumberic(mid(str,idx,1)) then
str2 = str2 & mid(str,idx,1)
end if
nextmsgbox str2
名称A
AINIAI爱你
23
2
31
41
酒气恒22
爱死kdj
7
阿卡拉上KK01
8我需要的是里面纯的数字,
那么结果就是:
23
2
31
41
7
8
if isnumberic(mid(str,idx,1)) then
str2 = str2 & mid(str,idx,1)
else
str2 = "" '一旦发现有非数字退出
exit for
end if
nextmsgbox str2稍微修改下即可啊
Private Sub TestReg()
Dim strData As String
Dim reg As Object
Dim matchs As Object, match As Object strData = "名称" & vbCrLf & _
"名称A" & vbCrLf & _
"AINIAI爱你" & vbCrLf & _
"23" & vbCrLf & _
"2" & vbCrLf & _
"31" & vbCrLf & _
"41" & vbCrLf & _
"酒气恒22" & vbCrLf & _
"爱死kdj" & vbCrLf & _
"7" & vbCrLf & _
"阿卡拉上KK01" & vbCrLf & _
"8" Set reg = CreateObject("vbscript.regExp")
reg.Global = True
reg.IgnoreCase = True
reg.MultiLine = True
reg.Pattern = "^\d+$"
Set matchs = reg.Execute(strData)
For Each match In matchs
Debug.Print match.Value
Next
End Sub
楼主试试下面的代码
Private Sub Command1_Click()
Open "C:\1.txt" For Input As #1
Do While Not EOF(1) ' 循环至文件尾。
Line Input #1, TextLine ' 读入一行数据并将其赋予某变量。
If IsNumeric(TextLine) Then
Text1.Text = TextLine
End If
Loop
Close #1
End Sub
上帝啊
7楼的yiguangqiang88接分。。嘿嘿。对头。我发现大家思路都比我开阔呢,专业啊专业。