1. 程式人生 > 程式設計 >python 正則表示式引數替換例項詳解

python 正則表示式引數替換例項詳解

正則表示式是一個特殊的字元序列,它能幫助你方便的檢查一個字串是否與某種模式匹配。

Python 自1.5版本起增加了re 模組,它提供 Perl 風格的正則表示式模式。

re 模組使 Python 語言擁有全部的正則表示式功能。

compile 函式根據一個模式字串和可選的標誌引數生成一個正則表示式物件。該物件擁有一系列方法用於正則表示式匹配和替換。

re 模組也提供了與這些方法功能完全一致的函式,這些函式使用一個模式字串做為它們的第一個引數。

本章節主要介紹python 正則表示式引數替換。

使用正則表示式替換字典資料

${memberID} 對應的正則表示式 '\$\{.*\}'

解釋:\$ 轉義替換字串中 $

   \{ 轉義替換字串中 {
   . 除了\n中的任意單個自符
   * 匹配*前面的字元零次或者多次
   \} 轉義替換字串中 }

dict = {"memberId":"${memberID}","password":"123456","loanId":"${loanId}","amount":"-100"}
data = {"memberId":10001,"loanId":1}
for param in dict:
  value = dict[param]
  if param in data.keys():
    s = str(data[param])
  newValue = re.sub('\$\{.*\}',s,value)
  dict[param] = newValue
print(dict)

擴充套件:

正則表示式常用規則

^ 匹配字串的開頭,指定字串必須以什麼開頭
$ 匹配字串結尾,指定字串以$前的字元結尾
+ 匹配前面的字元1次或者多次 >= 1
{m} 指定匹配字元的次數
? 匹配前面字元0次或者1次

 python中通過re模組來處理正則表示式。re模組的常用方法如下:

  re.match(re規則,字串,修飾符):從頭開始匹配。從字串的第一個字元開始匹配,如果第一個字元不匹配規則,那麼匹配失敗。

  re.search(re規則,字串,修飾符):匹配包含。不要求從字串的第一個字元就匹配。只要字串當中有匹配該規則的,則就匹配成功。

  re.findall(re規則,字串,修飾符):把所有匹配的字元放在列表中並返回。

  re.sub(re規則,替換串,被替換串,替換次數,修飾符):匹配字元並替換。

總結

以上所述是小編給大家介紹的python 正則表示式引數替換例項詳解,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對我們網站的支援!
如果你覺得本文對你有幫助,歡迎轉載,煩請註明出處,謝謝!