python正規表示式若干示例

2021-08-14 18:39:24 字數 1563 閱讀 5318

下面這段內容是我lda訓練輸出的topic-word結果,包含了每個主題對應的詞彙和其概率,我需要將所有的詞彙提取出來,便於分析主題意義。即」「中的內容。

2018-01-18 07:40:39,950 : info : topic #0 (0.014): 0.010*"business" + 0.009*"family" + 0.008*"baby" + 0.007*"wife" + 0.006*"claim" + 0.006*"husband" + 0.006*"model" + 0.006*"woman" + 0.005*"event" + 0.005*"night" + 0.005*"fan" + 0.005*"daughter" + 0.004*"style" + 0.004*"award" + 0.004*"christmas" + 0.004*"***" + 0.004*"stock" + 0.004*"energy" + 0.004*"mother" + 0.004*"street" + 0.004*"company" + 0.004*"celebrity" + 0.003*"girl" + 0.003*"child" + 0.003*"rock" + 0.003*"sheer" + 0.003*"london" + 0.003*"friend" + 0.003*"face" + 0.003*"coat" :
提取方法:

import re

words = re.findall(r"\"(.+?)\"", line) #findall即提取出所有符合條件的文字並形成列表,\"中\是轉義符,(.+?)即為獲得雙引號內的所有文字。

關於正規表示式中的這些符號的含義,可以參考這篇文章:python正規表示式指南,其中有詳細的介紹。

場景二:提取文字中存在的郵箱位址

#中列舉了各種符號,的作用為能夠匹配其中出現的任意字元,其後有個"+"意味著能夠匹配多次。a-z即指代abcd…xyz等26個字母。

print re.findall(regex, text)

# 輸出結果為:

# ['[email protected]', '[email protected]']

# 最後乙個字尾為數字,一般來說不存在這樣的郵箱,因此排除。

目前只想到這兩種常用的功能,re.match和re.search較為雞肋,不夠靈活,不做詳細介紹。之後想到其他有用的場景再更。

正規表示式示例

表示式匹配 s 匹配空行。d d 驗證由兩位數字 乙個連字元再加 5 位數字組成的 id 號。s s s s s s 1 s 匹配 html 標記。下表包含了元字元的完整列表以及它們在正規表示式上下文中的行為 字元說明 將下一字元標記為特殊字元 文字 反向引用或八進位制轉義符。例如,n 匹配字元 n...

正規表示式示例

匹配 s 匹配空行。d d 驗證由兩位數字 乙個連字元再加 5 位數字組成的 id 號。s s s s s s 1 s 匹配 html 標記。下表包含了元字元的完整列表以及它們在正規表示式上下文中的行為 說明 將下一字元標記為特殊字元 文字 反向引用或八進位制轉義符。例如,n 匹配字元 n n 匹配...

正規表示式 示例

正規表示式的最簡單形式是在搜尋字串中匹配其本身的單個普通字元。例如,單字元模式,如 a,不論出現在搜尋字串中的何處,它總是匹配字母 a。下面是一些單字元正規表示式模式的示例 a 7 m 可以將許多單字元組合起來以形成大的表示式。例如,以下正規表示式組合了單字元表示式 a 7 和 m。a7m 請注意,...