Re: [問題] 關於特定字元和字元之間的字串統計已回收

看板MATLAB作者 (幻無影)時間14年前 (2010/05/18 23:01), 編輯推噓3(303)
留言6則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《rock666 (rock666)》之銘言: : 判斷網頁裡特定字元和字元之間字串的統計 : 例如: <p>this is a book<p> :         ˙ :         ˙ :         ˙ :    <p>Internet Explorer<p> : 然後可以判斷出 第一次出現的有14個字元 第二次出現的有17個字元 : 但是要用什麼方法去判別字元和字元之間的數 : 應該是要設定搜尋的範圍 然後用FOR 或者WHILE去讓他跑 : 但是整個概念仍無法從基礎的架構上作延伸 : 不知道範圍怎麼設定 : 也有爬過文@@ 但仍然沒有頭緒@@ : 希望有人能幫我解開這個疑惑@@ 感謝 很天真地假設不會遇到多層,如 <p><p>TEXT</p></p> 頂多只有 tag attribute,如 <p ....>TEXT</p> 的話,可以試著用 Regular Expression。 s = urlread('http://www.w3schools.com/tags/tag_p.asp'); [start_idx, end_idx] = regexp(s, '(?<=<p[^>]*?>).*?(?=</p[^>]*>)'); % length of matched substrings l = end_idx - start_idx + 1; 如果要非常精準的話,可能還是得用 Parser 生出 DOM 來切。 -- ※ 發信站: 批踢踢實業坊(ptt.cc)

05/18 23:14, , 1F
可能我MEMORY不夠 執行後一直busy
05/18 23:14, 1F

05/18 23:16, , 2F
真的假的... 你讀進來的檔案很大嗎?
05/18 23:16, 2F

05/18 23:19, , 3F
就先直接run您附上的程式 謝謝啦 我在執行看看
05/18 23:19, 3F

05/18 23:20, , 4F
該不會是抓不到網頁吧 XDDDDD
05/18 23:20, 4F

05/18 23:26, , 5F
剛測了一下,RAM 1G 跑起來也是約一秒而已啊...
05/18 23:26, 5F

05/18 23:48, , 6F
終於跑出來了^^ 印出1=19 19 23...算成功嗎?
05/18 23:48, 6F
如果想知道成不成功的話有個幫助判斷的方法: 把 regexp 的 output argument list 改成 [start_idx, end_idx, extents, matches] 這樣就可以直接在 matches 裡看到抓到的所有字串。 不過看到字串只是幫助你看看是否都有找到找對,實際確認還是得自己開原始碼。 ※ 編輯: DigiPrince 來自: 140.113.94.230 (05/19 00:06)
文章代碼(AID): #1BygkjM4 (MATLAB)
文章代碼(AID): #1BygkjM4 (MATLAB)