爬蟲之正則表達式

# .: 可以匹配任意字符,但是不能識別: \n ;
# \d: 可以匹配任意數字;
# \D: 可以匹配任意非數字;
# \s: 可以匹配空白字符(\n, \t, \r, 空格);
# \w: 可以匹配a-z, A-Z和下劃線;
# \W: 與\w剛好相反;
# *: 可以匹配1個或者多個字符;
# +: 匹配多個;
# ?: 匹配的字符可以出現1次或者多次;
# ^: 以...開頭;
# $: 以...結尾;
# |: 匹配多個字符串或者表達式;
# text = "0371-88888888"
# rep =  re.match("[\d\-]+", text)
# print(rep.group())

[]: 內部是匹配內容, \d表示任意數字非\n;
\-: 表示把'-'轉義;
# rep =  re.match("\w*", text)
# print(rep.group())
\w*: 撇配大小字母或者下劃線, *匹配一次或者多次;

# rep =  re.match("\w+", text)
# print(rep.group())
\w+: 撇配大小字母或者下劃線, *匹配多次;
# num = "[email protected]"
# rep = re.match('\w+@[a-z0-9]+\.[a-z]+', num)
# print(rep.group())


# url = "http://baidu.com/item/python/407313?fr=aladdin"
#
# rep =  re.match('(http|https|ftp://)[^\s]+', url)
# print(rep.group())
#
#
# num = "31131118908123235x"
# rep = re.match("\d{17}[\dxX]", num)
#
# print(rep.group())

# text = "100"
# rep = re.match("[1-9]\d?$|100", text)
# print(rep.group())

# text = "apple`s price is $99, orange`s price is $100."
# # ret = re.findall('\$\d+' ,text)
# ret = re.sub('\$\d+', '0', text)
# print(ret)

html = """
<dd class="job_bt">
<h3 class="description">職位描述:</h3>
<div class="job-detail">
<p>工作內容:</p>
<p>1、負責python開發工作,數據採集、分析、呈現;
<br>2、負責將算法產品工程化落地,幫助算法工程師快速的迭代;
<br>3、負責工程化基礎架構的開發;
<br>4、持續研究深度學習等前沿動態,能持續將算法落地,提成產品和業務能力。</p>
<p><br></p>
<p>任職要求:</p>
<p>1、計算機或相關專業本科以上學歷,4年以上相關工作經驗,熟悉常見數據結構,熟悉常見算法,有較強的軟件設計能力;
<br>2、熟練使用linux/unix平臺開發;
<br>3、精通Python。熟練使用一種WEB框架,例如flask, django,熟悉HTTP協議,熟悉Protobuf;
<br>4、熟悉Golang優先,熟悉k8s、Docker優先;
<br>5、有做過人工智能相關項目優先,瞭解Scala優先;
<br>6、精通mysql等關係數據庫,熟練使用Redis;
<br>7、瞭解javascript、css前端技術。(不是必備,但是要求瞭解);
<br>8、掌握大數據相關技能,瞭解spark、kafka、hbase等基本用法。</p>
        </div>
    </dd>
"""


# ret = re.sub('<.+?>', "", html)
# print(ret)


text = "htllo world ni hao"
ret = re.split(" ", text)
print(ret)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章