如何過濾文本框1中的文本(內容是試題)過濾后文本框中變為每行一道題目內容,其他所有全部過濾
試題文本下載: http://pan.baidu.com/s/1eQEf9AU
試題文本是這樣的

過濾后希望效果是這樣的

先謝謝回復的各位大神
uj5u.com熱心網友回復:
補充 抓取的是題號和分值之間的這些內容,如果題號和分值之間含空格也要保留,其他過濾如
【第2題】 xxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(2.0分)
過濾后保留
xxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
uj5u.com熱心網友回復:
dim w1,w2,ww,wt,i,jw1="所有試題內容..."
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
uj5u.com熱心網友回復:
文本框最后只顯示最后一題
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
uj5u.com熱心網友回復:
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
uj5u.com熱心網友回復:
嗯,謝謝,其實我也是大概那么改,但是最后文本框里出現的內容是 原來沒處理的文本內容+末尾才是過濾好的一題一行的內容,我想最后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
uj5u.com熱心網友回復:
嗯,謝謝,其實我也是大概那么改,但是最后文本框里出現的內容是 原來沒處理的文本內容+末尾才是過濾好的一題一行的內容,
我想最后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
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/108068.html
標籤:VB基礎類
