python正則文件
㈠ 如何使用 python 正則表達式解析文本文件
試試這個方法:import re
def get_email_list(text):
pattern = re.compile(r'\b[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}\b')
email_list = re.findall(pattern, text)
return email_list
print get_email_list(your_text)
㈡ python正則表達式是什麼
python正則表達式是使用單個字元串來描述、匹配某個句法規則的字元串,常被用來檢索、替換那些符合某個模式(規則)的文本。最初的正則表達式出現於理論計算機科學的自動控制理論和形式化語言理論中。
1950 年,數學家斯蒂芬·科爾·克萊尼利用稱之為「正則集合」的數學符號來描述此模型。肯·湯普遜將此符號系統引入編輯器 QED,隨後是 UNIX 上的編輯器 ed,並最終引入 grep。自此以後,正則表達式被廣泛地應用於各種 UNIX 或類 UNIX 系統的工具中。目前,許多程序設計語言都支持利用正則表達式進行字元串操作。
正則表達式常用的特殊字元:
:將下一個字元標記為一個特殊字元、一個原義字元(Identity Escape,有 "^" "$" "(" ")" "*" "+" "{" "|" 共計12個)、一個向後引用(backreferences)或一個八進制轉義符。例如「n」匹配字元「n」,「 」匹配一個換行符,「\」匹配「」,「(」則匹配「(」。
^:匹配輸入字元串的開始位置。如果設置了正則表達式的多行屬性,「^」也可以匹配「 」或「 」之 後的位置。
[a-z]:字元范圍,匹配指定范圍內的任意字元。例如「[a-z]」可以匹配「a」到「z」范圍內的任意小寫字母字元。
s:匹配任何空白字元,包括空格、製表符、換頁符等,等效於「[f v]」。注意 Unicode 正則表達式 會匹配全形空格符。
㈢ Python如何正則表達式匹配固定搭配的文本文件名文件名
abc-bh(?:\.\d+)+\.txt
㈣ python正則表達式
px=r'<tr>.+?<a.+?title=(.+?)"href="<%=.+?%>.*??filename=<%=.+?("(.+?)",".+?")%>">.+?</a>.+?<td.+?>(.+?)</td>.+?</tr>'
rex=re.compile(px,re.S|re.M)
mth=rex.findall(txt)
forlinmth:
printl[0].decode('utf-8'),l[1].decode('utf-8'),l[2].decode('utf-8')
其中字元串變數txt里存網頁源碼。
㈤ python 正則匹配
用python正則表達式可以做到,因為點在正則表達式中可以代表任意字元(除回車換行符外)
正則表達式 (-?d+). 替換成 1 (1表示第一捕獲組的數據)
完整的Python程序如下
importre
s='-111•485503•剩餘部分'
regex=r'(-?d+).'
result=re.sub(regex,r"1 ",s)
print(result)
㈥ python 正則表達式
這個用Python正則表達式應該這么寫(見圖中程序)
㈦ python正則
pic = requests.get(each)是發送請求到伺服器,伺服器返回(圖片)的二進制數據流, fp.write(pic.content)就是把圖片的二進制數據存到本地文件,也就是保存圖片
㈧ 如何在python中用正則表達式批量修改文件名
importre
importos
defget_file_list(folder):
file_list=[];
forroot,dirs,filesinos.walk(folder):
forfinfiles:
path=root+os.path.sep+f
file_list.append(path)
returnfile_list
defget_re_file_list(file_list,re_rule):
file_list_re=[]
forfileinfile_list:
ifre.search(re_rule,file):
file_list_re.append(file)
returnfile_list_re
defrename2new_file_list(file_list_re,re_rule,new_str):
re_c=re.compile(re_rule)
new_file_list=[]
foriinrange(0,len(file_list)):
new_base_name=re_c.sub(new_str,file_list[i][file_list[i].rindex(os.sep):])
new_full_path=file_list_re[i][:file_list_re[i].rindex(os.sep))+os.sep+base_name
new_file_list.append(new_full_path)
returnnew_file_list
defrename2list(old_list,new_list):
foriinrange(0,len(old_list)):
os.rename(old_list[i],new_list[i])
defmain():
root=""
re_rule=""
new_str=""
old_file_list=get_file_list(root)
re_file_list=(old_file_list,re_rule)
new_file_list=rename2new_file_list(re_file_list,re_rule,new_str)
rename2list(re_file_list,new_file_list)
if__name__=='__main__'
main()
㈨ python 正則
p = re.compile(r'<th class="subject new">(.*?)</th>',re.S)
不要繼續問為什麼, 去查python手冊.
還有一個小提示,不建議用str作變數名, 因為str是python內建的一個類
㈩ python正則表達式是什麼呢
python正則表達式如下:
在python中,所謂的「正則表達式」指的是通常被用來檢索、替換那些符合某個模式的一段文本。具體而言,它的作用是檢測某個字元串是否符合規則和提取網頁字元串中想要的數據。
正則表達式是對字元串提取的一套規則,我們把這個規則用正則裡面的特定語法表達出來,去匹配滿足這個規則的字元串。正則表達式具有通用型,不僅python裡面可以用,其他的語言也一樣適用。
python的編程特點:
速度快:Python的底層是用C語言寫的,很多標准庫和第三方庫也都是用C寫的,運行速度非常快。
免費、開源:Python是FLOSS(自由/開放源碼軟體)之一。使用者可以自由地發布這個軟體的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟體中。FLOSS是基於一個團體分享知識的概念。
高層語言:用Python語言編寫程序的時候無需考慮諸如如何管理你的程序使用的內存一類的底層細節。
解釋性:一個用編譯性語言比如C或C++寫的程序可以從源文件(即C或C++語言)轉換到一個你的計算機使用的語言(二進制代碼,即0和1)。這個過程通過編譯器和不同的標記、選項完成。