1. 程式人生 > >python常用的幾種字串替換函式strip、replace、sub

python常用的幾種字串替換函式strip、replace、sub

#!/usr/bin/env python # coding:utf-8 import re ''' 功能:對常見的幾種字串處理函式進行測試使用學習 Author:沂水寒城 ''' def str_test(): str_list=['We are family!!!', '00 11 22 33 44 55 66 77 88 99', 'Trouble is a friend!!!Trouble is a friend!!!', 'LoveLoveLove'] str_dict={ '!!!':'$$$', ' ':'@', 'T':'t', 'L':'&' } #使用replace ''' 基本用法:物件.replace(rgExp,replaceText,max) rgExp和replaceText是必須要有的,max是可選的引數 ''' str_list1=str_list res_list=[] for one_str in str_list1: for key in str_dict: one_str = one_str.replace(key, str_dict[key]) res_list.append(one_str) print '**************replace替換結果為:*********************' print str_list1 print res_list #使用re ''' re.sub()有5個引數,三個必選引數pattern,repl,string;兩個可選引數count,flags re.sub(pattern,repl,string,count,flags) pattern:表示正則表示式中的模式字串; repl:被替換的字串,或者是一個方法(既可以是字串,也可以是函式); 當repl為字串的時候,也就是需要 將string中與pattern匹配的字串都替換成repl 當repl為方法的時候,就必須是一個帶有一個引數,且引數為MatchObject型別的方法,該方法需要返回一個字串。 string:要被處理的,要被替換的字串; count:指的是最大的可以被替換的匹配到的字串的個數,預設為0,就是所有匹配到的字串。 flgas:標誌位 ''' str_list2=str_list res_list=[] pattern_rule=re.compile(r'!!!') for one_str in str_list2: one_str = re.sub(pattern_rule, '$$$', one_str) res_list.append(one_str) print '**************sub替換結果為:*********************' print str_list2 print res_list #使用strip() ''' 個人使用strip()很久了,感覺這個函式在一些事比如字串末尾換行符去除等方面出奇的好用, 它並不算是一個純正意義上跟上面兩個函式類似的字串處理的函式,但是用於字串尾部刪除等方面的時候 效果還是很不錯的 ''' str_list3=str_list res_list=[] for one_str in str_list3: one_str=one_str.strip('!!!') res_list.append(one_str) print '**************strip替換結果為:*********************' print str_list3 print res_list str_test()