如何用vb在一個textfile search關鍵字然後print番個關鍵字之後跟住果兩個字?

2007-05-14 11:55 am
假設個關鍵字係"一一"

個textfile有一行係"我是唯一一個好人"
咁而家我就要print"個好"出黎

請問個code應該係點~~
我想用open [filename] for [input]黎做

thx~

回答 (3)

2007-05-15 11:40 am
✔ 最佳答案
Dim sBuffer As String, Keyword As String
Dim KeywordLen As Integer, Position As Integer

Open myfile For Input As #1
sBuffer = (Input$(LOF(1), 1)) ' 一次過將 file 讀進 sBuffer
Close #1

KeywordLen = Len(Keyword) ' 關鍵字長度

Position = 1
Do Until ( Position < 1 Or Len(sBuffer) = 0 )
Position = InStr(1, sBuffer, Keyword, vbTextCompare) ' 找出關鍵字
If Position > 0 Then ' 找到關鍵字
' 印出關鍵字後面相同數量的字
Debug.Print Mid(sBuffer, Position + KeywordLen, KeywordLen)
' 將 sBuffer 之前部分刪除
sBuffer = Mid(sBuffer, Position + KeywordLen)
End If
Loop ' 重復直到找不到關鍵字或 sBuffer 已經完全刪除
2013-12-18 8:07 pm
讓顧客第一眼就看到你的廣告 ─ 下拉關鍵字

「Yahoo!奇摩下拉關鍵字/下拉關鍵詞」─ 效果最佳、最省錢的行銷廣告,有效才是王道。

關鍵字排第一 如何讓你的關鍵字排名第一 SEO關鍵字排第一名的秘密

最直接、最有效、最快速的廣告方式!使用下拉式關鍵字廣告,為您創造無限人潮與錢潮!

個人認為目前最快速有效的行銷方式就是下拉式關鍵字,提供您參考看看

相關部落格網址 http://*****/e4Dfm
2007-05-14 6:50 pm
參考以下範例,
dim strRec
dim strkeyword as string
dim blfind as boolean
dim intlocation, intkeylen as integer
dim strfind as string
Open "File name" For Random As #1 Len = 100

intkeylen = len(strkeyword)

do while not EOF(#1)
Line Input #1, strRec
strRec 'will alway be 100 characters long.
if blfind then
if intlocation>0 and intlocation<=99- intkeylen then
msgbox strfind & mid(strrec,1,1)
else
msgbox strfind & mid(strrec,1,2)
end if
end if
intlocation = instr(strRec, strkeyword)
blfind = false
strfind=""
if intlocation>0 and intlocation<=98- intkeylen then
msgbox mid(strrec, intlocation, intlocation+ intkeylen ,2)
strfind = ""
intlocation=0
blfind = false
elseif intlocation>0 and intlocation<=99- intkeylen
strfind = mid(strrec, intlocation, intlocation+ intkeylen ,1) & vbLF
blfind = true
end if
Loop
參考: ME


收錄日期: 2021-04-26 13:12:34
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20070514000051KK00512

檢視 Wayback Machine 備份