dim w1,w2,ww,wt,i,j w1="所有试题内容..." ww=split(w1,"】") for i=1 to ubound(ww)''第一个不是题 w2=split(ww(i),")答:")(0)''去掉答案部分 j=instrrev(w2,"(")''反向找第一个( w1=left$(w2,j-1)''得到纯题目 debug.print w1 next
文本框最后只显示最后一题Dim w1, w2, ww, wt, i, j ww = Split(txtText1.Text, "】") For i = 1 To UBound(ww) ''第一个不是题 w2 = Split(ww(i), ")答:")(0) ''去掉答案部分 j = InStrRev(w2, "(") ''反向找第一个( w1 = Left$(w2, j - 1) ''得到纯题目 txtText1.Text = w1 & vbCrLf Next
Sub test() Dim w1, w2, ww, wt, i, j w1 = "所有试题内容..." ww = Split(w1, "】") For i = 1 To UBound(ww) ''第一个不是题 w2 = Split(ww(i), ")答:")(0) ''去掉答案部分 j = InStrRev(w2, "(") ''反向找第一个( w2 = Left$(w2, j - 1) ''得到纯题目 w1 = w1 & IIf(w1 <> "", vbCrLf, "") & w2 Next txtText1.Text = w1 End Sub
嗯,谢谢,其实我也是大概那么改,但是最后文本框里出现的内容是 原来没处理的文本内容+末尾才是过滤好的一题一行的内容, 我想最后txtText1.text 里直接出现处理好的一题一行的内容 因为没处理的试题文本内容是放在txtTEXT1.text里 所以我是这么写的,不过结果和你上面那个一样 Dim w1, w2, ww, wt, i, j w1 =txtText1.text ww = Split(w1, "】") For i = 1 To UBound(ww) ''第一个不是题 w2 = Split(ww(i), ")答:")(0) ''去掉答案部分 j = InStrRev(w2, "(") ''反向找第一个( w2 = Left$(w2, j - 1) ''得到纯题目 w1 = w1 & IIf(w1 <> "", vbCrLf, "") & w2 Next txtText1.Text = w1
嗯,谢谢,其实我也是大概那么改,但是最后文本框里出现的内容是 原来没处理的文本内容+末尾才是过滤好的一题一行的内容, 我想最后txtText1.text 里直接出现处理好的一题一行的内容 因为没处理的试题文本内容是放在txtTEXT1.text里 所以我是这么写的,不过结果和你上面那个一样 Dim w1, w2, ww, wt, i, j w1 =txtText1.text ww = Split(w1, "】") For i = 1 To UBound(ww) ''第一个不是题 w2 = Split(ww(i), ")答:")(0) ''去掉答案部分 j = InStrRev(w2, "(") ''反向找第一个( w2 = Left$(w2, j - 1) ''得到纯题目 w1 = w1 & IIf(w1 <> "", vbCrLf, "") & w2 Next txtText1.Text = w1
【第2题】 xxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(2.0分)
过滤后保留
xxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
w1="所有试题内容..."
ww=split(w1,"】")
for i=1 to ubound(ww)''第一个不是题
w2=split(ww(i),")答:")(0)''去掉答案部分
j=instrrev(w2,"(")''反向找第一个(
w1=left$(w2,j-1)''得到纯题目
debug.print w1
next
文本框最后只显示最后一题Dim w1, w2, ww, wt, i, j
ww = Split(txtText1.Text, "】")
For i = 1 To UBound(ww) ''第一个不是题
w2 = Split(ww(i), ")答:")(0) ''去掉答案部分
j = InStrRev(w2, "(") ''反向找第一个(
w1 = Left$(w2, j - 1) ''得到纯题目
txtText1.Text = w1 & vbCrLf
Next
Dim w1, w2, ww, wt, i, j
w1 = "所有试题内容..."
ww = Split(w1, "】")
For i = 1 To UBound(ww) ''第一个不是题
w2 = Split(ww(i), ")答:")(0) ''去掉答案部分
j = InStrRev(w2, "(") ''反向找第一个(
w2 = Left$(w2, j - 1) ''得到纯题目
w1 = w1 & IIf(w1 <> "", vbCrLf, "") & w2
Next
txtText1.Text = w1
End Sub
我想最后txtText1.text 里直接出现处理好的一题一行的内容
因为没处理的试题文本内容是放在txtTEXT1.text里
所以我是这么写的,不过结果和你上面那个一样
Dim w1, w2, ww, wt, i, j
w1 =txtText1.text
ww = Split(w1, "】")
For i = 1 To UBound(ww) ''第一个不是题
w2 = Split(ww(i), ")答:")(0) ''去掉答案部分
j = InStrRev(w2, "(") ''反向找第一个(
w2 = Left$(w2, j - 1) ''得到纯题目
w1 = w1 & IIf(w1 <> "", vbCrLf, "") & w2
Next
txtText1.Text = w1
嗯,谢谢,其实我也是大概那么改,但是最后文本框里出现的内容是 原来没处理的文本内容+末尾才是过滤好的一题一行的内容,
我想最后txtText1.text 里直接出现处理好的一题一行的内容
因为没处理的试题文本内容是放在txtTEXT1.text里
所以我是这么写的,不过结果和你上面那个一样
Dim w1, w2, ww, wt, i, j
w1 =txtText1.text
ww = Split(w1, "】")
For i = 1 To UBound(ww) ''第一个不是题
w2 = Split(ww(i), ")答:")(0) ''去掉答案部分
j = InStrRev(w2, "(") ''反向找第一个(
w2 = Left$(w2, j - 1) ''得到纯题目
w1 = w1 & IIf(w1 <> "", vbCrLf, "") & w2
Next
txtText1.Text = w1