程式語言主要用python自帶的re,用c++的話boost庫里有對應的正規表示式的庫
1,解析糗百上的使用者名稱,點讚數等,
# -*- coding:utf-8 -*-
import urllib
import urllib2
import re
page = 1
url = ''
user_agent = 'mozilla/4.0 (compatible; msie 5.5; windows nt)'
headers =
try:
request = urllib2.request(url,headers = headers)
response = urllib2.urlopen(request)
content = response.read().decode('utf-8')
pattern = re.compile('.*?.*?.*?.*?.*?class="number">(.*?)',re.s)
items = re.findall(pattern,content)
for item in items:
print item[0], item[1]
except urllib2.urlerror, e:
if hasattr(e,"code"):
print e.code
if hasattr(e,"reason"):
print e.reason
輸出結果
我去哎喲喂 4926
漁舟唱挽 4781
五道嶺子五號 4950
冰山上的一角! 4725
翼翼喲~~~ 8496
小方方- 5985
聆聽問斜陽 2497
還差一步就變精神病 15273
隨遇而安→_→ 3168
郭惡人。 4293
大明湖畔的王阿哥 3398
林夕21pp 3518
劉家大少》 1478
呀仁 592
涼風繞耳 3388
懶羊羊627
4267
翼翼喲~~~ 6808
請叫我素素姐 7290
甘若li 2509
冷麵冷心冷溫柔i
3678
參考資料
1, 這個我覺得更清楚
2, 這個網上流傳多,但是沒太看明白
正規表示式 正則入門
先從乙個例子開始正規表示式。書寫乙個匹配手機號的正規表示式,為了方便討論,假定手機號是1開頭,第二位只能是3 5 8中的其中乙個,總共11位的數字,形如13 匹配手機號的正規表示式為 1 358 d 下面介紹此正規表示式中的各個符號的含義。表示字串的開頭,後面緊接著1,表示匹配的字串要以 1 開頭。...
正規表示式入門
對於文字字元,有11個字元被保留作特殊用途。他們是 這些特殊字元也被稱作元字元 不可顯示字元 可以使用特殊字串行來代表某些不可顯示字元 代表tab 0x09 代表回車符 0x0d 代表換行符 0x0a 字符集 字符集是由一對方括號 括起來的字元集合。使用字符集,你可以告訴正規表示式引擎僅僅匹配多個字...
正規表示式入門
老師說過 正規表示式就是用字串讀取字串!學習正規表示式的最好方法是從例子開始,理解例子之後再自己對例子進行修改,實驗。下面給出了不少簡單的例子,並對它們作了詳細的說明。假設你在一篇英文 裡查詢hi,你可以使用正規表示式hi。這幾乎是最簡單的正規表示式了,它可以精確匹配這樣的字串 由兩個字元組成,前乙...